EC-Cube3でパスワードを忘れて管理画面に入れない時

スポンサーリンク

EC-Cube2系までは色々とあるけど、3系になると途端に情報が探せなかったのでメモ。
以下のファイルでどうやら認証はしているらしい。
本当に正しいのか?はソースを順を追っていないので分からないけど、これをやったら出来た。

 

[root@hostname ec]# vi ./vendor/symfony/security/Core/Authentication/Provider/UserAuthenticationProvider.php

86行目辺りにあるcheckAuthenticationをコメントアウト。
恐らくここでエラーが出てるはず。それでcatchに行ってしまっているのだろうと推測。

public function authenticate(TokenInterface $token)
{
      ・
      ・
      ・
    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;
    }

この状態でログインユーザと適当なパスワードを入れると画面に入れる。
これだとログインユーザはチェックされているっぽい。
でもログインユーザはDB見れば分かるので、そこはいいんじゃなかろうか。

終わったら元に戻すのを忘れずに。


スポンサーリンク