Skip to main content
ネイティブからWebへのを適切に実装するには、Auth0は以下にまとめたベストプラクティスに従うことを推奨しています。これらのガイドラインは、セッションの整合性を確保するのに役立ちます。

Post Login Actions を使用してセッションの有効期間を制限する

post-login Action のトリガーを使用すると、ネイティブからWebへのSSO で作成された Web セッションに適切な時間制限を設け、非アクティブ時にはすばやく期限切れにできます。  post-login Actions を使用すると、session_transfer_token によって開始されたセッションを検出し、より短いアイドルタイムアウトと絶対タイムアウトを適用できます。

session_transfer_tokenをデバイスまたはIPアドレスに紐付ける

トークンが漏えい、記録、または傍受された場合のトークン再利用リスクを低減するため、session_transfer_token は、enforce_device_binding を使用して必ず送信元の環境に紐付けてください。
session_transfer_token は、URL 経由でトークンが意図せずログに記録されたり共有されたりするのを防ぎ、トークン傍受の攻撃対象を減らすため、Auth0ドメインに限定された Secure かつ HTTPOnly な Cookie を使って Webアプリケーションに送信してください。クエリパラメータを使用する必要がある場合は (たとえば Chrome Custom Tabs の場合) 、URL で HTTPS が使用されていることを確認し、使用後は URL からトークンを削除してください。

必要な場合を除き、Webアプリにリフレッシュトークンを発行しないでください

allow_refresh_token は、本当に長期間有効なトークンを必要とするWebアプリケーションでのみ有効にしてください。ほとんどの場合、有効期間の短いとサイレント認証の組み合わせで十分であり、ブラウザー環境ではそのほうが安全です。

必要に応じて Allow Refresh Tokens を有効にし、リフレッシュトークンを「オンライン」に設定する

孤立した認証情報の発生を防ぎ、がログアウト後も残らないようにするには、allow_refresh_token 設定を使用して、ネイティブからWebへのSSOで発行されたリフレッシュトークンを、その発行元のセッションにひも付けます。セッションが取り消されるか有効期限切れになると、リフレッシュトークンは自動的に無効化されます。

enforce cascade revocation を有効にする

session_transfer_token に関連付けられたすべてのWeb セッションとリフレッシュトークンを確実に失効させるには、ネイティブアプリケーションで enforce_cascade_revocation を有効にします。これは、アプリケーション間で安全にセッションを無効化するために不可欠です。