EC-cube4でテスト環境を作成し、FTPの中身をうつし、データベースを移したときに、なぜか、ログインできなくなり、下記のサイトを参照にパスワードを再設定し、ログインできるようになったので、備忘録で残しておきます。
ECCUBE4系管理画面のパスワードを忘れたときの対処方法
https://ec-cuber.jp/news-column/column21/
上記で、かなりわかりやすく書かれているので、
よろしければ、参考にしてください(^^)
概略は、
編集対象ファイル
/app/config/eccube/packages/eccube.yaml
/src/Eccube/Form/Type/Admin/ChangePasswordType.php
手順
1.「eccube.yaml」のeccube_auth_type を「PLAIN」に変更
「/app/config/eccube/packages/」の 「eccube.yaml」を編集いたします。
eccube.yaml の26行目付近に記載されている
eccube_auth_type: HMAC を
HMAC→PLAIN
に変更して保存します。
2.phpmyadminで、「login_id」と「password」をコピー
テーブル:dtb_member
対象メンバーの「login_id」と「password」をコピー。
3.管理画面のログインにてlogin_idと暗号化されたpasswordでログインします。
phpmyadminで、コピーしたlogin_idとpasswordを入力し、「ログイン」します。
4.最初に使った「eccube.yaml」の eccube_auth_type をHMACに戻す
/app/config/eccube/packages/
eccube.yaml のPLAINをもとの→「HMAC」に戻す。
eccube.yaml のPLAINをもとの→「HMAC」に戻す。
5.ChangePasswordType.phpの52行目付近の「 new UserPassword(), 」をコメントアウト
/src/Eccube/Form/Type/Admin/の「ChangePasswordType.php」
の52行目付近「 new UserPassword(), 」→「 //new UserPassword(), 」をコメントアウトします。
6.キャッシュをクリア
管理画面>コンテンツ管理>キャッシュ管理よりキャッシュ削除
※キャッシュを削除しないと、「PLAIN」と記載された状態で読み込まれる場合があり、パスワードは変更できますが、入力したパスワードがそのままデータベースに登録されてしまうため、要注意。私は、これを誤ってやってしまい。やり直しました^^;
7.管理画面よりパスワードを変更
管理画面右上をクリックし「パスワード変更」より
・「現在のパスワード」→myphpadminより、コピーしたパスワードを使用
・「新しいパスワード」→任意の新しいパスワード
を入力。
8.ChangePasswordType.phpの52行目付近の「 new UserPassword(), 」のコメントアウトを外す
9.ログアウトしてログインできるか確認
といった流れになります。
下記のサイトで、詳しく解説されているので、よかったら、
またみてください。
ECCUBE4系管理画面のパスワードを忘れたときの対処方法
https://ec-cuber.jp/news-column/column21/
https://ec-cuber.jp/news-column/column21/
コメント