オリジン トライアルが成功したため、Chrome 132 で FedCM の新しいアップデートをいくつかリリースします。Mode API、Use Other Account API、Continuation API バンドルです。
Mode API
モード API では、さまざまな UX モード構成が可能になり、新しい UX モード(アクティブ モード)が導入されます。アクティブ モードは、FedCM がデフォルトで使用する既存のパッシブ モード(旧称ウィジェット モード)の代替手段です。
アクティブ モード(以前のボタンモード)では、ユーザーが navigator.credentials.get() の呼び出し時に IdP からログアウトしていても、ID プロバイダ(IdP)は FedCM API を使用できます。ログインフローは、[IdP でログイン] ボタンをクリックするなどのユーザー操作によって開始されるため、ユーザーの意図をより正確に反映できます。
アクティブ モードのログイン ダイアログ UI は、パッシブ モードの UI とは異なります。アクティブ モードの UI は、より大きく、中央に配置され、ブランディング アイコンが大きくなっています。
パソコンのパッシブ モード(デフォルト)の FedCM ログイン ダイアログ UI。FedCM をアクティブ モードで使用する方法については、デベロッパー ドキュメントをご覧ください。
別のアカウントを使用
Use Other Account API を使用すると、IdP が複数のアカウントをサポートしている場合や、既存のアカウントの置き換えをサポートしている場合に、ユーザーは現在ログインしているアカウントとは別のアカウントに切り替えることができます。
継続 API バンドル
Continuation API バンドルは Chrome 132 以降で利用できます。このバンドルは、複数の FedCM 機能で構成されています。
これらの機能は、IdP がユーザーに RP へのカレンダー アクセス権を付与させるなどの認可フローを実装するために使用できるため、バンドルされています。
continue_on URL を開きます。ユーザーは、RP にログインする前に、追加の権限を確認して付与できます。Fields API は開示 UI メッセージを変更します。継続 API
継続 API を使用すると、IdP は ID アサーション エンドポイントのレスポンスでリダイレクト URL を提供して、複数ステップのログインフローを有効にできます。これは、IdP が追加の情報や権限をリクエストする必要がある場合に便利です。たとえば、次のような場合です。
- ユーザーのサーバーサイド リソースにアクセスする権限。
- 連絡先情報が最新であることを確認します。
- 保護者による使用制限。
Continuation API の使用方法については、FedCM デベロッパー ドキュメントをご覧ください。
Parameters API
Parameters API を使用すると、RP は ID アサーション エンドポイントに追加の Key-Value パラメータを提供できます。パラメータ 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 デベロッパー ドキュメントと更新ログの蓄積ページは、今後も最新の状態に保たれます。