オリジン トライアルの成功を受けて、Chrome 132 で FedCM の新しいアップデートをいくつかリリースします。Mode API、Use Other Account API、Continuation API バンドルです。
Mode API
Mode API を使用すると、さまざまな UX モードを構成できます。また、新しい UX モードであるアクティブ モードも導入されています。アクティブ モードは、FedCM がデフォルトで使用する既存のパッシブ モード(旧称ウィジェット モード)の代替モードです。
アクティブ モード(旧称: ボタンモード)では、navigator.credentials.get()
が呼び出されたときにユーザーが IdP からログアウトしている場合でも、ID プロバイダ(IdP)は FedCM API を使用できます。ログイン フローは、[IdP でログイン] ボタンのクリックなど、ユーザーの操作によって開始されます。これにより、ユーザーの意図がより正確に反映されます。
アクティブ モードのログイン ダイアログの UI は、パッシブ モードの UI とは異なります。サイズが大きく、中央に配置され、ブランディング アイコンも大きくなります。
アクティブ モードで FedCM を使用する方法については、デベロッパー向けドキュメントをご覧ください。
別のアカウントを使用
Use Other Account API を使用すると、IdP が複数のアカウントをサポートしている場合や、既存のアカウントの置き換えをサポートしている場合は、現在ログインしているアカウントとは異なるアカウントに切り替えることができます。
Continuation API バンドル
Continuation API バンドルは Chrome 132 以降で利用できます。このバンドルは、複数の FedCM 機能で構成されています。
これらの機能は、IdP がそれらを使用して、ユーザーが RP にカレンダーへのアクセスを許可するなど、認可フローを実装できるため、まとめて提供されています。
Continuation API
Continuation API を使用すると、IdP は ID アサーション エンドポイント レスポンスでリダイレクト URL を提供して、複数ステップのログイン フローを有効にできます。これは、IdP が追加情報や権限をリクエストする必要がある場合に便利です。たとえば、次のような場合です。
- ユーザーのサーバーサイド リソースにアクセスする権限。
- 連絡先情報が最新であることを確認する。
- 保護者による使用制限。
Continuation API の使用方法については、FedCM デベロッパー向けドキュメントをご覧ください。
Parameters API
Parameters API を使用すると、RP はID アサーション エンドポイントに追加の Key-Value パラメータを指定できます。Parameters API を使用すると、RP は IdP に追加のパラメータを渡して、基本的なログイン以外のリソースに対する権限をリクエストできます。
追加のパラメータを渡すことは、RP が請求先住所やカレンダーへのアクセスなどの追加の権限をリクエストする必要がある場合に便利です。ユーザーは、Continuation API を使用して起動される IdP が制御する UX フローを通じてこれらの権限を承認できます。IdP は、この情報を共有します。
Parameters API の使用方法については、デベロッパー向けドキュメントをご覧ください。
Fields API
Fields API を使用すると、RP は IdP から共有する必要があるユーザー情報(名前、メールアドレス、プロフィール写真の組み合わせ)を指定できます。リクエストされた情報は、FedCM ダイアログの情報開示 UI に表示されます。ユーザーがログインを選択すると、idp.example
がリクエストされた情報を rp.example
と共有することを通知するメッセージが表示されます。
Fields API の使用方法については、デベロッパー向けドキュメントをご覧ください。
複数の configURL
複数の configURL を使用すると、IdP は、構成ファイルと同じ well-known ファイルで accounts_endpoint
と login_url
を指定して、IdP の複数の構成ファイルを使用できます。この機能は、次のような場合に役立ちます。
- IdP は、複数の異なるテスト環境と本番環境の構成をサポートする必要があります。
- IdP は、リージョンごとに異なる構成(
eu-idp.example
とus-idp.example
など)をサポートする必要があります。
実装の詳細については、デベロッパー向けドキュメントをご覧ください。
カスタム アカウント ラベル
カスタム アカウントラベルを使用すると、IdP はユーザー アカウントにラベルをアノテーションできます。RP は、特定のラベルの configURL
を指定して、特定のラベルを持つアカウントのみを取得できます。これは、RP が特定の条件でアカウントを除外する必要がある場合に便利です。たとえば、developer
や hr
などのロール固有のアカウントのみを表示する場合などです。
意見交換とフィードバックの提供
フィードバックがある場合や問題が発生した場合は、問題を報告してください。FedCM デベロッパー向けドキュメントと累積更新ログのページは、最新の状態に保たれます。