管理者パスワードを回復もしくはリセットするにはどうしたらいいですか?

From Joomla! Documentation

This page is a translated version of the page How do you recover or reset your admin password? and the translation is 20% complete.
Outdated translations are marked like this.
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎eesti • ‎español • ‎français • ‎italiano • ‎português • ‎português do Brasil • ‎Ελληνικά • ‎русский • ‎فارسی • ‎ไทย • ‎中文(中国大陆)‎ • ‎中文(台灣)‎ • ‎日本語

Joomla! 1.5 のパスワードの復元

このページはJoomla! 2.5以降のためのページです。もしまだJoomla! 1.5を使っているのなら、

こちらを確認してください。.

通常は、バックエンドのユーザーマネージャーからユーザーの追加・編集・削除を行うことができます。その為には、Super Administratorのグループのメンバーでログインしなければなりません。

場合によっては、この方法は使えないでしょう。例えば、サイトが"ハック"され、パスワードやユーザーを変更された場合。パスワードを知っている人がもう現れない場合。あなたがパスワードを忘れてしまった場合など。

この様な場合でもまだ、Super AdministratorでログインするためにJoomla!のデータベースを変更することができます。これらはJoomla!の管理者が利用可能な方法です。

Joomlaがインストールされたサーバーのconfiguration.phpにアクセスできるなら、以下の方法でパスワードを回復できます。

1. FTPプログラムを使用して、サイトに接続します。configuration.phpファイルを見つけたら、パーミッションを確認します。444や他の場合は、644に変更します。これは後々、変更後のconfiguration.phpをアップロードするときの問題を防ぎます。

2. configurationファイルをダウンロードします。

3. ダウンロードしたconfiguration.phpをnotepad++などのテキストエディタで開き、リストの下に

public $root_user='myname';

の行を追加します。ここでの、mynameは、パスワードを知っている管理者アクセス権を持つユーザー名です。Authorレベル以上のユーザー名も、管理者アクセス権を持つユーザー名の代わりに使用できます。

4. configuration.phpを保存し、サイトにアップロードし直します。パーミッションは644のままでかまいません。

このユーザーは一時的なsuper administratorになります。

5. バックエンドにログインし、パスワードを持っていない管理者ユーザーのパスワードを変更するか、新しいsuper adminユーザーを作成します。新しいユーザーを作成した場合は、状況に応じて古いユーザーをブロックまたは削除することをお勧めします。

6. 終わったら、アラートボックスの"Click here to try to do it automatically"のリンクを利用して、configuration.phpに追加した行を削除します。上手くいかなかったら、テキストエディタで編集して、アップロードし直してください。

FTPプログラムでconfiguration.phpファイルのパーミッションを確認してください、444のはずです。手動で追加したラインを削除した場合は、444に変更してください。

自分のパスワードを知っているユーザーがいなくてフロントエンド登録を利用できない場合は、このドキュメントで後述するようにデータベースを変更する必要があります。

方法2. 直接データベースを編集する

上記の方法が上手くいかない場合、他に2つの選択肢がありますが、どちらもMySQLデータベースを直接操作する必要があります。

データベースの中のパスワードを変更する

管理ユーザーがまだ定義されている場合、最も簡単なオプションはデータベース内のパスワードを既知の値に変更することです。 これにはphpMyAdminまたは他のクライアントを使ってMySQLデータベースにアクセスできることが必要です。

Stop hand nuvola.svg.png

アクセスを回復したら、必ずパスワードを変更してください。

この方法は、パスワードを次の単語に直接変更する方法です。 - "secret"

  1. phpMyAdminで左のリストからJoomla!で移用しているデータベースを選択します。画面の左にデータベーステーブルが表示されます。
  2. テーブルのリストから"_users"を含むテーブルを探しクリックします。(注:インストール時に指定したプレフィックスに"_users"が続いているテーブルを探します)
  3. 上のツールバーの"Browse"ボタンをクリックします。これにより、このサイトに設定されているすべてのユーザーが表示されます。
  1. パスワードを変更するユーザーを探し、その行のEditアイコンを押します。
  2. passwordフィールドを編集します。次の行の値をコピーします。
d2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199

passwordフィールドにペーストし、Goボタンを押します。phpMyAdminに"Affected rows: 1"のメッセージが表示されます。これで、パスワードは"secret"に変更されました。

  1. このユーザーとパスワードでログインし、安全のためにパスワードを変更してください。ユーザーマネジャーを利用して、全てのユーザーが合法か確認してください。ハッキングされている場合は、サイト上でのパスワードのすべてを変更することもできます。

新しいSuper Administratorユーザーを追加する

パスワードの変更が上手くいかなかったり、Super Administratorグループのメンバーで無い場合は、この方法で新しいユーザーを作成します。

  1. phpMyAdminで左のリストからJoomla!で移用しているデータベースを選択します。画面の左にデータベーステーブルが表示されます。
  2. 選択したデータベースのSQLクエリを動かすために、ツールバーの"SQL"ボタンを押します。"Run SQL query/queries on database <your database>"と呼ばれるフィールドが表示されます。
  1. このフィールドの全ての文字を消去し、下のクエリの内容をコピー&ペースとして、Goボタンを押します。クエリを実行して、新しいAdministratorユーザーをテーブルに追加します。
  2. 別のadministratorアカウントを追加するには、以下のSQLクエリを使用してください。
Stop hand nuvola.svg.png

プレフィックスをdbのテーブルと一致させてください!

Joomlaで使用するSQLコード 2.5, 3.x, 4.x, 5.x

INSERT INTO `jos31_users`
   (`name`, `username`, `password`, `params`, `registerDate`, `lastvisitDate`, `lastResetTime`)
VALUES ('Administrator2', 'admin2',
    'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '', NOW(), NOW(), NOW());
INSERT INTO `jos31_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');

ここまでできたら、Joomla!のバックエンドにユーザー名"admin2"とパスワード"secret"でログインできます。ログインしたら、ユーザーマネージャーでパスワードを安全なものに変更し、有効なEメールアドレスをアカウントに追加してください。あなたが"ハッキング"されている可能性がある場合は、すべてのユーザー、特にSuper Administratorグループのメンバーが正当であることを確認してください。

Stop hand nuvola.svg.png
Warning!

ここまででは例としてパスワードを"secret"に変更しました。他の二つの有効な値を以下に示します。

- password = "this is the MD5 and salted hashed password"
------------------------------------------------------
- admin  = 433903e0a9d6a712e00251e44d29bf87:UJ0b9J5fufL3FKfCc0TLsYJBh2PFULvT
- secret = d2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199
- OU812  = 5e3128b27a2c1f8eb53689f511c4ca9e:J584KAEv9d8VKwRGhb8ve7GdKoG7isMm