Skip to main content2021年12月1日 にログアウトの動作が変更され、ログアウトの実行中にIDプロバイダーから/login/callbackに渡されるreturnToクエリパラメーターを使用する代わりに、Auth0ログアウトAPIに渡されるURIにユーザーを常にリダイレクトするようになりました。使用されるURIは、セッションのログアウト要求で呼び出されるAPIによって異なります。
https://{yourDomain}/logout:Auth0はreturnToパラメーターを使用します
https://{yourDomain}/v2/logout?federated:Auth0はreturnToパラメーターを使用します
https://{yourDomain}/wsfed/{yourClientId}?wa=wsignout1.0:wreplyパラメーターです
これらいずれかのAPIへの以前の呼び出し記録がAuth0にない場合、ログアウトは完了しますが、リダイレクトは起こらず、エンドユーザーにはエラーページが表示されます。
影響を受けるエンドポイント
以下のエンドポイントはこの変更の影響を受けます。
https://{yourDomain}/v2/logout:federatedクエリパラメーターを使用して、IDプロバイダーからユーザーをログアウト
https://{yourDomain}/wsfed/{yourClientId}?wa=wsignout1.0:wreplyクエリを使用して、WS-FedプロトコルでAuth0からログアウト
https://{yourDomain}/login/callback:returnToクエリパラメーターを使用する場合
以下の使用パターンに依存しているテナントは、2021年12月1日 以降、希望のリダイレクトURIにリダイレクトできなくなります。
- アプリケーションがログアウトURLを指定するのに、
/v2/logout or /wsfed/{yourClient}?wa=wsignout1.0を先に呼び出すことなく、/login/callback?returnToを呼び出す
- IDプロバイダーが
/login/callback?returnToの呼び出しに指定するreturnTo値が、以前の/v2/logoutまたは/wsfed/{yourClientId}への呼び出しで提供された元の値と異なる
- 影響を受けるAPIの1つに対して、アプリケーションが複数の呼び出しを同時に行い、それぞれに異なるリダイレクトURIを提供する
/v2/logoutまたは/wsfed/{yourClientId}?wa=wsignout1.0を先に呼び出すかにかかわらず、影響を受けるAPIの1つと/authorize APIをアプリケーションまたはユーザーが同時または交互に呼び出す
アクション
-
[Auth0 Dashboard]>[Monitoring(モニタリング)]>[Logs(ログ)]に移動して、
type:depnote AND description:*unvalidated*redirects*を検索し、廃止された動作に依存するアプリケーションを見つけます。
-
影響を受けるアプリケーションのそれぞれが以下であることを確実にします。
- アプリケーションまたは証明書利用者が、Auth0の公開APIのAuthentication API:LogoutまたはAuthentication API:WS-Federationを使用して、ログアウトを開始する。
/login/callback?returnToに戻されるログアウトURLをIDプロバイダーが編集することにアプリケーションが依存しない。 そのような編集は受け付けなくなります。
- アプリケーションが異なるログアウトURLを使用して、ログアウトAPIを同時に呼び出さない。Auth0はユーザーエージェントについて、一度に1つのログアウトURLのみを保管します。つまり、同時実行のログアウトプロセスはリダイレクトに失敗します。
- アプリケーションがログアウトAPIと
/authorizeを同時または交互に呼び出さない。ログイントランザクションを完了すると、ユーザーエージェントに保管済みのログアウトURLが消去されます。つまり、同時実行のログアウトプロセスはリダイレクトに失敗します。
- 影響を受けるAPIの1つと
/authorizeをアプリケーションまたはユーザーが同時または交互に呼び出さない。
移行アクションが完了してテストし終わったら、移行を確認する必要があります。
移行を確認する
アプリケーションを移行して、廃止された使用パターンに依存していないことを確認したら、2021年12月1日 までの任意のタイミングで廃止された動作を無効化し、変更を確認します。
- [Auth0 Dashboard]>[Tenant Settings(テナントの設定)]>[Advanced(詳細設定)]に移動して、[Migrations(移行)] セクションを見つけます。
- [Unvalidated redirects from /login/callback(/login/callbackからの未検証のリダイレクト)] スイッチを無効に設定します。このスイッチをオフにすると、廃止された動作がテナントで無効となり、使用を防ぐことができます。
このスイッチを無効にした後で、ログアウトURLへのリダイレクトが期待どおりに動作しない場合には、アプリケーションが廃止された動作にまだ依存していることを示しています。
移行が運用環境で正常に動作し、確認できた場合には、このスイッチをオフにしたままにできます。これで、廃止された機能は今後使用されなくなります。2021年12月1日 付で、Auth0は廃止された動作とそれに関連するスイッチを完全に削除します。