IT技術に関する情報掲載サイト

プログラミングに関することを掲載します。

EC-CUBE3で管理画面へのログインパスワードを忘れたときの対応方法

EC-CUBEを使っているときに、久しぶりに管理画面に入ろうとして、ログイン情報を忘れてしまったことはありませんか。

EC-CUBEは、セキュリティのためか、管理画面にパスワードの再発行の機能はありません。だからといって、データベースに直接アクセスして、パスワードを変更しようとしても、ハッシュ化されており、なんのパスワードかしることができません。

そういうときは、以下のファイルを編集すると、一時的にパスワードなしでログインすることができます。

 

<対象ファイル>vendor/symfony/security/Core/Authentication/Provider/UserAuthenticationProvider.php

 

<編集箇所>

86行目あたりをコメントアウト

try {
$this->userChecker->checkPreAuth($user);
// $this->checkAuthentication($user, $token);
$this->userChecker->checkPostAuth($user);
} catch (BadCredentialsException $e) {
if ($this->hideUserNotFoundExceptions) {
throw new BadCredentialsException('Bad credentials.', 0, $e);
}
throw $e;
}

 

ログインする際に、IDは、既存のものを使い、パスワードは、任意で入力してもらうとログインできます。ログイン後、すぐにパスワードを変更して、上記でコメントアウトして部分をもとに戻すことを忘れずに行って下さい。