【あいでぃれんけい】

ID連携(フェデレーション) とは?

最終更新:
💡 ほかの認証結果を、信頼関係と検証で受け入れる

サービスがIdPによる認証結果などを受け入れて利用者を認証する仕組み。SSOとの違い、SAML・OIDCと検証・権限を解説します。

📌 このページのポイント
ID連携:認証結果を検証して受け入れる利用者がIdPで認証IdP認証結果などを発行する信頼関係を定める利用先方式に沿って検証発行元・対象・期限権限も判断SAML・OIDCなどで受け渡し方は異なるSSOはログインの手間を減らすこと追加の認証・アカウントや権限の準備は別常に一度のログインで済む保証ではない
認証するIdPと、その結果を検証する利用先の役割を表します。ブラウザーを介する転送や詳細な要求・応答は方式によって異なり、全サービスへ無条件に情報を配る図ではありません。
ひよこ ひよこ
ID連携は、同じパスワードを配ること?
ペンギン先生 ペンギン先生
違うよ。IdPという認証を行う側が認証結果などを示し、利用先がそれを検証して受け入れる仕組みだ。例えば会社の認証基盤と、利用する業務サービスを連携する。通常、利用先に利用者のパスワードを渡して照合させる方法ではない。
ひよこ ひよこ
IdPと、利用先は何をする?
ペンギン先生 ペンギン先生
IdPは利用者を認証し、利用先へ認証結果などを示す情報を発行する。利用先は、その発行元を信頼してよいか、情報が自分向けで有効かを検証する。OIDCなどでは利用先をRPと呼び、SAMLではSPという呼び方も使うよ。
ひよこ ひよこ
「本物の本人」という保証が届く?
ペンギン先生 ペンギン先生
どんな認証をしたか、どんな本人確認や登録をしたかは、方式と構成による。アカウントを認証したことから、現実の身元や、どんな操作でも許可してよいことまで自動で保証されるわけではない。必要な条件を利用先が確かめるんだ。
ひよこ ひよこ
SSOとID連携は、同じこと?
ペンギン先生 ペンギン先生
SSOは、複数のサービスを使うときのログインの手間を減らすこと。ID連携は、それを実現するために使える仕組みだ。設定やセッション、利用先の要求によって再認証や追加の認証が必要になることもあり、常に一度だけとは限らないよ。
ひよこ ひよこ
SAMLとOIDCはどう違う?
ペンギン先生 ペンギン先生
SAMLはXMLのアサーションなどを使う標準。OIDCはOAuth 2.0の上に認証の仕組みを加え、IDトークンなどを使う。単に「古い企業向け」と「新しいAPI向け」で分けるのではなく、対応する製品と使う手順、必要な検証を確かめるよ。
ひよこ ひよこ
署名付きのトークンなら、そのまま信じていい?
ペンギン先生 ペンギン先生
署名だけでは足りない。信頼する発行元、受け取る対象、期限などを方式に沿って検証し、使い回しや誤った応答を受け入れないようにする。属性に個人の情報が含まれることもある。渡す情報と利用権限、IdPが使えない場合の運用も考えよう。
もっと詳しく知りたい人へ

認証できたら、利用先の全機能を使える?

認証と認可は別です。IdPの情報を検証してログインできても、利用先でどの役割や権限を与えるかを判断します。アカウントや役割を作成・更新・停止するプロビジョニングの連携も、認証の連携とは別に確認します。

OIDCのIDトークンとアクセストークンは同じ?

用途が違います。IDトークンは認証結果などをクライアントに伝えるものです。アクセストークンは保護されたリソースを利用するために使います。受け取る対象や検証の規則も違うため、交換可能な「ログインの証明」として扱わないようにします。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ID連携」って出てきたら「別の認証基盤による認証結果を受け入れ、利用者を確認する仕組み」と思えばだいたいOK!
📖 おまけ:英語の意味
「Identity Federation」 = アイデンティティの連携・連合
💬 認証を行うIdPと、その情報を受け入れる利用先の関係を定めて連携します。組織をまたぐ構成だけでなく、一つの組織内のサービス間にも使われます。

参考資料

← 用語集にもどる