最新バージョンのSafariブラウザーでは、サイレント認証でのトークン更新が期待通りに動作しないことがあります。新しいバージョンのSafariブラウザーには、Intelligent Tracking Prevention(ITP)という新機能が導入されています。ITPは、Webサイトによって、ユーザーの複数サイトでのアクティビティが追跡されるのを防ぐように設計されています。デフォルトで、ITPは有効になっています。使用しているSafariのバージョンにITPがあるのかを調べるには、[設定]>[プライバシー] タブに移動して、[サイト越えトラッキングを防ぐ] のオプションが選択されているかどうかを確認します。Documentation Index
Fetch the complete documentation index at: https://auth0.generaltranslation.app/llms.txt
Use this file to discover all available pages before exploring further.
ITPとブラウザーの動作
getTokenSilentlyは、リフレッシュトークンのローテーションを使用するようにSDKを構成しない限り、サイレント認証を行います。
回避策
ITPのデバッグモード
com.apple.SafariTechnologyPreviewからcom.apple.WebKit.Networkingに変更されています。手順で説明されているコマンドに問題がある場合には、以下を試してみてください。
- サイトに追跡機能があると分類する:
defaults write com.apple.WebKit.Networking ResourceLoadStatisticsManualPrevalentResource example.com - 設定を検査する:
defaults read com.apple.WebKit.Networking ResourceLoadStatisticsManualPrevalentResource - 設定を削除する:
defaults delete com.apple.WebKit.Networking ResourceLoadStatisticsManualPrevalentResource