管理画面のパスワードを忘れてログインが不可能になった場合、EC-CUBE上で再設定する方法はありません。DB上で直接暗号化されたパスワード(ハッシュ)を修正するか、ソースコードを修正してパスワードなしでログインした上で自分のパスワードを変更する必要があります。

ハッシュを修正するには一定の知識が必要ですので、今回はEC-CUBE3のソースコードを修正してパスワードなしで管理画面へアクセスする方法をご紹介します。

src/Eccube/Application.phpのinitSecurtyメソッドを覗くと、’security.access_rules’という、どのページではログインをしていないと閲覧できないというルールを設定している箇所があります。

この’security.access_rules’で管理画面のログイン指定をおこなっている2行目をコメントアウトしてください。

これによって認証を行わずに管理画面へアクセスすることができますので、速やかにパスワードの再設定を行い、コードを元に戻してください。

このコメントアウトを行うと誰でもEC-CUBEの管理画面にアクセスできることになります。管理者のパスワードを再設定・変更することも可能です。

IPアドレスで制限する、管理画面にBasic認証をかける、分かりにくいパスにするなど、状況に応じて対策をおこなってください。

関連するカスタマイズ

Bootstrap3のクラスform-controlを取り除く方法(form_widget)... EC-CUBE3.0系ではSymfonyComponentの1つであるFormにより、Twig内では強力な関数form_widget、form_errorsが使用できます。 これらは作成したFormType(定義ファイル)に従って自動で初期データ入力やエラー処理をしてくれるというたいへん便利な...
ログアウト時にカート内の商品を維持する方法... EC-CUBE3ではログアウト時にカート内の商品が消えてしまいます。これはログアウト時にinvalidateメソッドによりセッションの破棄を行っているためです。 カートの商品を維持するにはinvalidate_sessionの設定をfalseに設定する方法があります。invalidat...
ロゴブロックに入っているh1タグを動的に変更する方法... EC-CUBE3.0の標準テンプレートでは、ロゴエリアはブロックとして配置されており、コントローラと紐付けられていないため、内容を動的に変更するのが若干手間となっています。 今回はh1タグをここに配置したまま商品名やカテゴリ名を動的に入れられるようにする方法をご紹介します。 考え方として...
特定のページへアクセス制限をかけログイン必須にする方法... EC-CUBE3がベースにしているSymfony2では各ページに表示権限を与えることができます。 この仕組みによってログインユーザーのみページを表示する・しないという設定ができます。 $appによる指定を行います。 /src/Eccube/Application.phpに下記のよう...