CTS-KB

SAML

さむる

SAML 2.0 Security Assertion Markup Language
#認証 #認可 #SSO #エンタープライズ #標準仕様

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)

典型的なフロー(SP-Initiated SSO)IdPSaaS (SP)ユーザーIdPSaaS (SP)ユーザー既ログインなら即座に応答署名を検証アクセスIdP へリダイレクト認証要求SAML アサーション (XML)ブラウザ POST でアサーション送信ログイン成立

SAML 2.0 が解決した問題

  • 複数システムへの個別ログイン : 一度 IdP で認証すれば全社の SaaS にログイン状態を引き継げる
  • アカウント情報の集約 : 退職時に IdP の 1 アカウント停止で全 SaaS のアクセスが切れる
  • メタデータ交換による自動信頼確立 : IdP / SP の設定を XML で交換

現代での位置づけ

用途SAMLOpenID Connect
エンタープライズ SSO✅ 現役△ 普及中
コンシューマ Web❌ 重い・古い✅ 主流
モバイルアプリ❌ ブラウザ前提で困難

XML ベースの重さと独特のフロー(ブラウザ POST)のため、コンシューマ Web では OIDC に置き換わりつつあるが、 エンプラ顧客向けの SaaS では SAML 連携が必須要件 として残る。

関連用語

外部リソース