1時間のログインフローの有効期限への移行

2024年2月21日より、Auth0のリダイレクションベースのログインフローの最長有効期間が1時間になりました。完了までに1時間を超えるログインフローは、ユニバーサルログインとクラシックログインの両方で、期限切れになります。

影響するログインフロー

Auth0では現在、次のインタラクティブログインフローが完了するまでに最大3日間かかることを許可しています。

2024年2月21日より、Auth0のリストアップされている認可フローの最長有効期間が1時間になりました。トランザクションは1時間後に有効期限切れになります。有効期限が切れると、メールやパスワードの入力、Auth0アクションへのリダイレクトなど、エンドユーザーのブラウザからの操作は次のようになります。

  • 紐づけられたアプリケーションのデフォルトのログインルートにリダイレクトされ、新しいログイントランザクションとしてフローが再開される または

  • アプリケーションのデフォルトのログインルートを設定していない場合、またはクラシックログインを使用している場合は、エラーページを表示する。エンドユーザーは、ログイントランザクションを再開するためにアプリケーションに戻る必要があります。このエラーページは、ユニバーサルログインを使ってカスタマイズできます。

アクション

ログアウト後にユーザーをリダイレクトする場合は、ユニバーサルログイン/authorizeエンドポイントに直接リダイレクトするのではなく、ユーザーのアクション(ログインボタンをクリックするなど)に基づいてユーザーが再度ログインできるようにするアプリケーションのページにリダイレクトします。ユーザーが明示的に開始したアクションなしに新しいログイントランザクションを開始するパターンは、新しいログイン試行がブラウザーウィンドウに放置され、悪意のある攻撃を受ける可能性があるため、トランザクションの完了に時間がかかりすぎる主な原因です。

ユニバーサルログインを使用している場合:

  • Auth0 DashboardたはAuth0 Management API経由でアプリケーションのデフォルトのログインルートを設定することをお勧めします。この方法では、ログイントランザクションが自動的に開始され、トランザクションの有効期限が切れるとアクティブなエンドユーザーのログインフローがシームレスに再開されるため、最高のユーザーエクスペリエンスが実現します。

  • 設定でデフォルトのログインルートが許可されていない場合は、より良いユーザーエクスペリエンスを提供するためにAuth0エラーページをカスタマイズすることをお勧めします。エラーページを使用して、ユーザーにアプリケーションに戻ってログイン試行を再開するように指示できます。

  • 上記のどちらも行わない場合は、デフォルトのAuth0エラーページが表示されます。

クラシックログインを使用している場合、ログインウィジェットにエラーが表示され、ユーザーはアプリケーションに戻って、期限切れのトランザクションのログインを再試行する必要があります。

テナントログをレビューする

テナント内で影響を受けるトランザクションとアプリケーションの数についてさらに詳しく知りたい場合は、[Auth0 Dashboard(Auth0ダッシュボード)]>[Monitoring(モニタリング)]>[Logs(ログ)]でログを確認してください。次の検索で廃止通知ログを探します。type:depnote AND description:*Long*state*expirations*。これらの結果は、1時間以上継続するログイントランザクションとアプリケーション(client_idなど)を示します。

これらのログはレート制限されており、client_idごとに1時間で1つ表示されることに注意してください。

移行を確認する

デフォルトのログインルートを設定するか、エンドユーザー向けの具体的な指示でAuth0エラーページを更新した後、2024年2月21日より前にいつでも1時間の有効期限を有効(無効)にして、ログイン動作を確認することができます。

  1. [Auth0 Dashboard(Auth0ダッシュボード)]>[Tenant Settings(テナント設定)]>[Advanced(詳細)]に移動して、移行セクションを検索します。

  2. [Long state expirations(長い状態の有効期限)]のトグルをオフにします。この設定を無効にすると、トランザクションは1時間のみに制限されます。この設定を有効にすると、トランザクションは最大3日間まで許容されます。