フェデレーション ふぇでれーしょん
簡単に言うとこんな感じ!
「うちの会社のIDで、よその会社のシステムにもそのままログインできる仕組み」だよ!パスポートみたいなもので、日本で発行したパスポートを外国でも使えるように、信頼し合った組織どうしでIDを”相互承認”するんだ。毎回IDを作らなくてOKってこと!
フェデレーションとは
**フェデレーション(Federation)とは、異なる組織やシステムが互いに信頼関係(トラスト)**を結び、それぞれが管理するユーザーIDを相互に認証・利用できるようにする仕組みです。「連合」「連携」という意味の英単語がそのまま使われています。
たとえば、自社の社員が取引先のクラウドサービスにアクセスするとき、わざわざ取引先のシステム用にIDとパスワードを別途作成する必要がなくなります。自社の認証基盤に一度ログインするだけで、信頼関係を結んだ外部サービスにもそのまま入れる、これがフェデレーションの本質です。
現代のビジネス環境では、SaaS(クラウドサービス)の利用が当たり前になり、社員が使うシステムは社内だけでなく、複数の外部サービスにまたがります。フェデレーションはその複雑さを解消し、管理コストの削減・セキュリティの向上・利便性の向上を同時に実現する重要な技術概念です。
フェデレーションの構造と役割分担
フェデレーションには、決まった役割を持つ登場人物(コンポーネント)がいます。
| 役割 | 正式名称 | 役割のたとえ |
|---|---|---|
| IdP(アイディーピー) | Identity Provider(アイデンティティプロバイダー) | パスポートを発行する「国」 |
| SP(エスピー) | Service Provider(サービスプロバイダー) | パスポートで入国を許可する「空港」 |
| ユーザー | エンドユーザー | パスポートを持って旅する「旅行者」 |
- IdP:ユーザーIDを管理し、「この人は本物だ」と証明するトークン(証明書)を発行する側。社内のActive DirectoryやOktaなどが該当します。
- SP:IdPが発行した証明書を受け取り、ユーザーにサービスを提供する側。SalesforceやSlackなどの外部SaaSが典型例です。
認証フローの流れ
[ユーザー] → [SP(SaaS)] →「IdPで確認してください」
↓
[IdP(社内)] → 社員として認証 → 証明トークンを発行
↓
[SP(SaaS)] → トークンを検証 → アクセスを許可 ✅
ポイントは、SPはユーザーのパスワードを直接見ないこと。「あのIdPが保証しているならOK」という信頼関係だけでアクセスが通るため、パスワードが外部に漏れるリスクが大幅に下がります。
覚え方:「パスポート外交」で覚える
「IdP=パスポート発行国、SP=入国審査の空港」 発行した国(IdP)を信頼しているから、審査(SP)がスムーズに通る。国どうしの「信頼協定」がトラストサークル!
歴史と背景
- 1990年代後半:企業が複数のシステムを持つようになり、IDの乱立が問題化。「SSO(シングルサインオン)」の概念が登場。
- 2002年:SAML 1.0(セキュリティアサーションマークアップ言語)がOASISによって標準化。XMLベースの認証情報交換の仕組みが整備される。
- 2005年:SAML 2.0が登場。企業間フェデレーションの事実上の標準となり、現在も広く使われている。
- 2006年:Googleなどが中心となりOpenID 1.0が登場。コンシューマー向けのフェデレーション普及が加速。
- 2012年:OAuth 2.0、OpenID Connect(OIDC)が登場。スマホアプリ・REST APIとの相性がよく、現代のフェデレーションの主役に。
- 2010年代後半〜現在:Okta、Azure AD(現Microsoft Entra ID)などのIDaaS(IDaaSaaS)が普及し、フェデレーション設定がGUI操作で簡単にできる時代に。
主要プロトコルの比較
フェデレーションを実現するには、証明書の形式や通信手順を決める「プロトコル」が必要です。主なものを比較します。
| プロトコル | 主な用途 | データ形式 | 特徴 |
|---|---|---|---|
| SAML 2.0 | 企業間・SaaS連携 | XML | 歴史が長く信頼性◎。設定は複雑 |
| OpenID Connect | Webアプリ・モバイル | JSON (JWT) | シンプルで現代的。Googleログイン等 |
| OAuth 2.0 | API認可 | JSON | 厳密には「認可」の仕組み。OIDCと組み合わせて使う |
| WS-Federation | Microsoftエコシステム | XML | Active Directory連携に強い |
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| SAML 2.0(OASIS標準) | XMLベースの認証情報交換フォーマット。企業間フェデレーションの定番 |
| RFC 6749 | OAuth 2.0 の認可フレームワーク定義 |
| RFC 8414 | OAuth 2.0 Authorization Server Metadata |
| OpenID Connect Core 1.0 | OAuth 2.0上に認証レイヤーを追加したプロトコル。JWT使用 |
| RFC 7519 | JWT(JSON Web Token)の仕様。OIDCトークンの形式として使われる |
| WS-Federation 1.2(OASIS) | Microsoftエコシステム向けのフェデレーション標準 |
関連用語
- シングルサインオン(SSO) — 一度のログインで複数サービスを使える仕組み。フェデレーションはSSOを実現する手段の一つ
- SAML — XMLベースのフェデレーション用認証プロトコル。企業向けSaaSで広く使われる
- OpenID Connect — OAuth 2.0をベースにした現代的な