パスワードリセットリンクの有効期限を変更する


7

ですから、パスワードがリセットされたリンクが期限切れになるまでの時間を短くする必要があります。現在のところ、リンクが長すぎるか、まったく期限切れにならないためです...

System / Configuration / Admin ...で検索してみましたが、(例を見たように)feはフィールドPassword LifetimeまたはPassword Changeフィールドがありません。実際には-パスワードには何も接続されていません。

だから何か提案?

更新:別の設定->を見つけましRecovery Link Expiration Period (days)System/Configuration/Admin/Admin User Emailsが、最小は1日です...そして2分程度が必要です。

なんらかのクエリまたはインストールスクリプトを使用して、DBから何らかの方法でそれを変更することは可能ですか?つまり、数値だけでなく、設定全体を(たとえば、分単位で)変更します。


1
あなたは2分を持ちたくありません。一部のシステム、特に3つのウイルススキャナーでメールをチェックする場合、最大10分かかることがあります。外部SMTPを10分ごとにのみチェックする場合、メールが到着するまでに最大20分かかることがあります。ちょうど私の2セント。
Fabian Blechschmidt 2013年

回答:


5

これを実現するには、独自の拡張機能を作成して書き換える必要がありMage_Admin_Model_Userます。

クラスでメソッドを書き換えてisResetPasswordLinkTokenExpired()置き換えます

    $dayDifference = floor(($currentTimestamp - $tokenTimestamp) / (24 * 60 * 60));
    if ($dayDifference >= $tokenExpirationPeriod) {
        return true;
    }

    $minuteDifference = floor(($currentTimestamp - $tokenTimestamp) / 60);
    if ($minuteDifference >= $tokenExpirationPeriod) {
        return true;
    }

また、独自のsystem.xmlファイルを作成し、オプションの説明を「リカバリーリンクの有効期限(日)」から「リカバリーリンクの有効期限(分)」に変更することもできます。


あなたは完全なパスを提供してもらえ
insoftservice

元のファイルはにありますapp/code/core/Mage/Admin/Model/User.php。元のファイルは編集せず、独自の拡張子を作成してモデルを書き直してください。これを行う方法の1つの例を次に示します。inchoo.net
Matthias Zeis

あなたのコメント@MatthiasのThxですが、このファイルが見つからなかったので、後でmagento 1.7とmagento 2. *のフォルダー構造が完全に変更されていることに気付きました。案内してくれませんか。/vendor/magento/magento-backend/i18n/en_US.csvを変更することでテキストを変更できました
insoftservice

申し訳ありません、私には答えがありません。Magento 2に関する新しい質問を投稿してください。誰かがあなたをすぐに手助けしてくれるはずです。
マティアスツァイス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.