FedCM: プライバシー保護 ID 連携 API

このページでは、FedCM のメリットFedCM の実装を検討すべきユーザーユーザーが FedCM を操作する方法について説明します。

Federated Credential Management(FedCM)は、サードパーティ Cookie やナビゲーション リダイレクトに依存しない、プライバシー重視のユーザー フレンドリーなアプローチで、フェデレーション ID サービス(ID プロバイダでログインなど)を実現します。

FedCM では、サードパーティの ID プロバイダを使用してウェブサイトで新しい認証方法をユーザーに提示します。

ID 連携とは

ID 連携では、個人(ユーザーまたはエンティティ)の認証または認可を信頼できる外部 ID プロバイダ(IdP)に委任します。その後、IdP は、その個人がリレーリング パーティのウェブサイト(RP)にログインすることを許可します。ID 連携では、RP は IdP に依存して、新しいユーザー名とパスワードを要求せずにユーザーにアカウントを提供します。

フェデレーション ID ソリューションを使用すると、ユーザーは RP ごとに別の認証情報を作成する必要がなくなります。これにより、ユーザー エクスペリエンスが向上し、フィッシングの発生可能性が低減し、信頼できる ID プロバイダから確認済みのユーザー情報を取得できます。

従来のソリューションとサードパーティ Cookie

従来の ID 連携メカニズムは iframe、リダイレクト、サードパーティ Cookie に依存しているため、プライバシーに関する懸念が生じます。これらのソリューションは、ウェブ全体でユーザーを追跡するために悪用される可能性があります。ブラウザは、正当な ID サービスと望ましくない監視を区別できません。

プライバシーに関する懸念を念頭に、主要なブラウザはサードパーティ Cookie を制限しています。これにより、一部の機能が影響を受ける可能性があります。コミュニティの協力と Google の調査により、サードパーティ Cookie の制限の影響を受ける ID の連携関連の統合がいくつかあることが判明しました。

FedCM との ID 連携

FedCM は、サードパーティ Cookie を制限してブラウジングすることを選択したユーザーでも、これらの重要な認証フローを有効にすることを目的としています。

FedCM はプロトコルに依存しません。スタンドアロン ソリューションとして実装することも、さまざまなプロトコルが利用できる追加レイヤとして実装することもできます。たとえば、機能的な OAuth サーバーは、FedCM エンドポイントを実装し、FedCM のレスポンスで返された認証コードを OAuth アクセス トークンと交換することで、FedCM のブラウザを介したワンタップ ログイン エクスペリエンスと直感的な UI を利用できます。

FedCM が必要な理由

従来のソリューションと比較して、ユーザー、RP、IdP のデベロッパーを念頭に置いて設計されているため、ウェブ エコシステムに複数のメリットをもたらします。

サードパーティ Cookie を使用しない ID ソリューションのサポート

FedCM を使用すると、ウェブ全体でユーザーのトラッキングによく使用されるサードパーティ Cookie への依存を減らすことができます。この API を使用すると、サードパーティ Cookie を制限してブラウジングするユーザーにも、パーソナライズされたログイン エクスペリエンスを提供できます。

FedCM は、他のプライバシー サンドボックス API とも統合されています。たとえば、Storage Access API は、FedCM 認証を信頼シグナルとして使用します。この統合は、認証に FedCM と SAA の両方に依存し、クロスオリジン iframe が必要なストレージにアクセスできるようにするウェブサイトに役立ちます。

ユーザー エクスペリエンスの向上

FedCM では、ブラウザを介した UI ダイアログが導入され、ワンタップによるログイン プロセスが簡素化されます。この API は、ログイン ページが煩雑になる問題(NASCAR 問題)にも対応しています。

NASCAR の問題の例: 7 つの異なるログイン オプションを選択できるため、UI が雑然としているウェブサイト。
NASCAR の問題の例: IdP の選択範囲が広すぎるために UI が乱雑なウェブサイト。

FedCM では、膨大な数のソーシャル ログイン ボタンではなく、シンプルで使いやすいインターフェースを提供しています。

セキュリティ

連携 ID アプローチでは、ユーザーは IdP によって管理される信頼できるアカウントを使用できます。この方法では、ユーザーがすべてのサイトに認証情報を追加する必要はありません。これにより、フィッシング攻撃の対象領域が減少します。また、RP は独自の堅牢なセキュリティ対策を実装する代わりに、安全な ID 管理に特化した IdP の専門知識を利用できます。

FedCM は、連携 ID フローをユーザーにとってさらに便利にし、セキュリティが低い ID フローよりも連携 ID フローを優先するようユーザーに促すことを目的としています。

より多くのユーザーにパーソナライズされたエクスペリエンスを提供

FedCM は、アカウント登録フローの UX の摩擦を軽減します。Google Identity Service のケーススタディによると、ユーザーは複数ステップのログイン オプションよりも、FedCM のワンタップ フローでアカウントを作成する方が好まれています。

FedCM により、より多くの IdP がユーザーにワンタップ ログインを提供できるようになります。ワンタップ ID フローを提供する IdP が増えたことで、ユーザーは RP でより幅広い IdP から選択できるようになりました。FedCM は、最も関連性の高いアカウントをユーザーに提示することで、IdP 選択メカニズムを改善します。

登録率が高いほど、RP はより多くのユーザーにパーソナライズされたエクスペリエンスを提供できます。

さまざまな ID プロバイダのサポート

FedCM の簡素化された UI は、関連する IdP のパーソナライズされたリストをユーザーに表示することを目的としています。FedCM の IdP 選択メカニズムにより、RP が選択する IdP は、IdP のユーザーベースの大きさに制限されなくなりました。たとえば、一部のユーザーは bigger-idp.example ではなく small-idp.example にのみアカウントを持っている場合があります。

マルチ IDP 機能を使用すると、rp.example は UI を煩雑にすることなく、small-idp.examplebigger-idp.example の両方をサポートできます。これには、すべての関係者にメリットがあります。

  • ユーザーは、大小にかかわらず、任意の IdP を選択できます。
  • RP はさまざまな IdP をサポートすることで、より多くのユーザーにリーチできます
  • ユーザーベースが少ない IdP は、より多くの RP で利用できます。

FedCM の対象ユーザー

FedCM は、次の条件に該当する場合にのみ役立ちます。

  • サードパーティ Cookie を使用しないブラウジングを選択したユーザーに対しても、フェデレーション ID フローをサポートすることを目標としています。
  • サードパーティの RP を持つ ID プロバイダ(IdP)である。RP が関連性の高いサイトである場合は、関連するウェブサイト セットの方が適している場合があります。
  • 独自の ID ソリューションがあり、複数のドメインがそのソリューションを使用している。

IdP である

FedCM では、ID プロバイダのサポートが必要です。信頼する当事者は、FedCM を単独で使用できません。RP の場合は、IdP に手順を尋ねることができます。

複数の RP

RP がサードパーティである場合、または ID ソリューションを使用している RP が 4 つを超える場合は、連携 ID に FedCM を使用することをおすすめします。

最大 5 つの RP を備えた ID プロバイダで、RP と IdP の間にファーストパーティの関係がある場合は、関連ウェブサイト セット(RWS)の使用を検討してください。RWS では、サードパーティ Cookie が制限されている場合でも、関連性の高いサイトのセット全体に制限付きでサードパーティ Cookie をアクセスさせることができます。

Cookie を使用しない ID 連携フローをサポートする

FedCM は、サードパーティ Cookie を使用しないブラウジングを選択したユーザーに対しても、重要なフェデレーション ID フローをサポートします。FedCM では、ユーザーは引き続き RP でフェデレーション アカウントを使用して登録、ログイン、ログアウトできます。

また、FedCM は Storage Access API の信頼シグナルとして機能し、IdP が開始したストレージ アクセス リクエストの摩擦を解消します。

Chrome でサードパーティ Cookie をブロックして、サードパーティ Cookie を使用しないブラウジングをユーザーが選択した場合に、ID 連携が引き続き機能するかどうかをテストします。サードパーティ Cookie の制限が影響すると予想される既知の機能を必ずテストしてください。

ユーザーによる FedCM の操作

FedCM は認証プロトコルに依存しないよう設計されており、サードパーティの IdP を使用して RP を認証する新しいフローをユーザーに提供します。FedCM のデモをお試しください。

利用者側の事業者にログインする

FedCM には、パッシブアクティブの 2 つの UI モードがあります。

パッシブ モード。パッシブ モードでは、FedCM プロンプトを表示するためにユーザー操作は必要ありません。ユーザーがリレーリング パーティ(RP)のウェブサイトにアクセスすると、次の条件が満たされている場合に、navigator.credentials.get() が呼び出されると FedCM ログイン ダイアログが表示されることがあります。

ユーザーが、パッシブ モードの FedCM を使用して RP にログインします。

アクティブ モード。アクティブ モードでは、FedCM プロンプトをトリガーするために、一時的なユーザーの有効化([Sign in with…] ボタンのクリックなど)が必要です。

ユーザーがアクティブ モードの FedCM を使用して RP にログインします。

ユーザーは [<ユーザー名> として続行] をタップしてログインを完了できます。成功すると、ユーザーが IdP を使用して RP に連携アカウントを作成したという事実がブラウザに保存されます。

ユーザーが IdP で RP にアカウントを持っていない場合は、RP の利用規約やプライバシー ポリシーなどの追加の開示テキストを含む登録ダイアログが表示されます。

をご覧ください。

e プライバシー法の遵守

FedCM を IdP または RP として使用すると、ユーザーの端末機器に情報の保存や、すでに保存されている情報へのアクセスが行われます。そのため、欧州経済領域(EEA)と英国では、通常ユーザーの同意が必要な e プライバシー法の対象となるアクティビティとなります。ユーザーが明示的にリクエストしたオンライン サービスを提供するために FedCM の使用が厳密に必要であり、同意の要件が免除されるかどうかを判断するのはお客様の責任です。詳しくは、プライバシー サンドボックスのプライバシー関連のコンプライアンスに関するよくある質問をご覧ください。

Vision

Google は、現在の制限事項に対処し、ユーザー エクスペリエンスを向上させるための新機能を積極的に開発しています。

  • Google は、ユーザーにとってスムーズで直感的かつ邪魔にならない認証プロセスを実現するため、よりシンプルな UX の検討を進めています。
  • Google はユーザーのプライバシー保護に全力を尽くしています。Google は、IdP トラッキングの問題を軽減する委任指向の次世代 FedCM モデルに移行する予定です。NextGen では、ユーザーが IdP に追従することなく RP にログインできます。
  • FedCM は、RP の選択に基づいて、ユーザーに幅広い IdP の選択肢を提示することを目的としています。これを実現するために、Multi-IdP API と IdP Registration API の開発に取り組んでいます。
  • Google は、FedCM をパスキーなどの他の認証方法と統合し、自動入力などの追加手段を組み合わせて、統合された認証エクスペリエンスを導入することに積極的に取り組んでいます。

詳しくは、ロードマップをご覧ください。

次のステップ

FedCM API を使用して ID ソリューションをテストおよび開発する環境を準備します。
ID プロバイダ側で FedCM を使用して ID ソリューションを実装する方法を確認します。