Security Assertion Markup Language — XML ベースで認証・認可情報を交換するプロトコル。OASIS により 2005 年 3 月 に SAML 2.0 が標準化された。エンタープライズの SSO(シングルサインオン) の事実上の標準。
構成要素
| 役割 | 説明 |
|---|---|
| IdP(Identity Provider) | 認証を担うサーバー。社内の AD FS / Okta / Azure AD など |
| SP(Service Provider) | SAML アサーションを受け取って利用するサービス。SaaS 側 |
| SAML アサーション | 認証結果を表す XML 文書。署名付きで改ざん防止 |
典型的なフロー(SP-Initiated SSO)
SAML 2.0 が解決した問題
- 複数システムへの個別ログイン : 一度 IdP で認証すれば全社の SaaS にログイン状態を引き継げる
- アカウント情報の集約 : 退職時に IdP の 1 アカウント停止で全 SaaS のアクセスが切れる
- メタデータ交換による自動信頼確立 : IdP / SP の設定を XML で交換
現代での位置づけ
| 用途 | SAML | OpenID Connect |
|---|---|---|
| エンタープライズ SSO | ✅ 現役 | △ 普及中 |
| コンシューマ Web | ❌ 重い・古い | ✅ 主流 |
| モバイルアプリ | ❌ ブラウザ前提で困難 | ✅ |
XML ベースの重さと独特のフロー(ブラウザ POST)のため、コンシューマ Web では OIDC に置き換わりつつあるが、 エンプラ顧客向けの SaaS では SAML 連携が必須要件 として残る。
関連用語
- OpenID Connect — JSON ベースの後継的位置づけ
- Entra ID — Microsoft の SAML 対応 IdP
- AWS Cognito — SAML / OIDC 両方をサポート