1

django_two_factor_auth を正常にインストールしました。トークン ログイン、バックアップ トークン、および Twilio 経由の SMS はすべて正常に動作しているようです。ただし、私のユーザーは、ログインのたびにトークンを入力する必要があることを容認しません。

私のニーズは、以下で説明されているものと似ています: https://github.com/Bouke/django-two-factor-auth/issues/56

検証が成功した後、OTP 検証を 30 日間延期するオプションをユーザーに提供したいと考えています。

このために、django_agent_trust をインストールしました。django_agent_trust がインストールされている場合、AuthenticationTokenForm にパッチを適用して BooleanField を追加しました。

(two_factor/forms.py、AuthenticationTokenForm 内)

try:
    from django_agent_trust import trust_agent
    trust_this_agent = forms.BooleanField(label=_("Trust this browser for 30 days"),
                                          required=False)
except:
    pass

また、django_agent_trust の django_agent_trust.trust_agent API を使用して、is_trusted フラグを無条件に設定およびリセットすることができました。

問題は、ユーザーが選択した BooleanField の値をどこで取得するかを考え出すことです。フォーム ウィザードのどこかで迷ってしまいました。

あなたの議論が理にかなっていると思うなら、私の全体的なアプローチの知恵を疑問視する答えを受け入れます. 私がここに欠けているものはありますか?

4

1 に答える 1