SAML
2023-03-23 (木) 20:53:30
SAML とは †
名称 †
- Secure Assertion Markup Language
- 呼称は「サムル」「サムエル」
概要 †
- ユーザの認証情報、アクセス制御情報、属性情報等をWebサーバ間で安全に交換するための仕様。
- アサーションを交換するための標準仕様。
- シングルサインオンを実現するための基盤として使われる。
- クッキーを使わない
- エンタープライズ系で採用される。
アサーションの種類 †
- 認証アサーション
- 属性アサーション
- 認可決定アサーション
SAMLの構成 †
- IdP
- Identity Provider
- ユーザの属性情報の管理と認証を行う
- SP
- Service Provider
- ユーザにサービスを提供する
- IdPの公開鍵を保管し、IdPが発行するアサーションの署名を検証する
SAMLの仕組み †
- ID連携
- IdPとSPは事前にアカウント情報を連携させる
- IdPとSP間で行われる要求・応答メッセージ
- SAMLRequest
- SAMLResponse
- IdPとSP間の送受信で行われるバインディング
- SOAPバインディング
- HTTP Redirect バインディング
- HTTP POST バインディング
- HTTP Artifact バインディング
- Artifact
- アサーションの参照情報
- サイトの識別子
- アサーション
- 認証や認可に関する情報などを格納するXML形式の証明書
- 認証に成功するとIdPが生成する
SAMLの認証フロー †
- IdP Initiated
- SP Initiated
IdPサービス †
- Active Directory Federation Services - Microsoft
- Azure Active Directory - Microsoft (IDaaS)
WebアプリケーションのSAML対応 †
OpenAMのFedlet †
- WebアプリケーションをSAMLのSPとして機能されている。 ツール
対応しているWebアプリケーション †
- Google Apps
- Salesforce
- 学認(Shibboleth)
関連サイト †
関連用語 †
- シングルサインオン
- プライバシーバイデザイン
- ID連携(フェデレーション)
- OpenID Connect
- XACML(eXtensible Access Control Markup Language)
- XML
- XMLデジタル署名