マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

汎用認証サイトにSAML2.0を実装するため仕様を読む。

ロードマップ

Technical Overview

SAML2.0 の 技術概要

Profiles

特定のユースケースを実現するための組み合わせ方を定義。

Bindings

Core (Assertions and Protocols)

SAML Metadata

Authentication Context

XML Signature Syntax and Processing

XMLデジタル署名処理規則と構文

ユースケース

参加者

Web-SSO

IDフェデレーション

アカウントリンク

※ 追加のサイトとアカウントリンクする場合は、
 新たにフェデレーション名識別子を生成し、上記手順を繰り返す。

アーキテクチャ

基本概念

基本的なSAMLの概念

(Profile(Binding(Protocol(Assertion))))

                     ・Metadata
                     ・Authentication Context

Assertions

アサーティング・パーティが真実であると主張するプリンシパルに関する
ステートメントを伝えるXMLスキーマによって定義されたアサーション。

Protocols

Bindings

参加者間でSAMLプロトコル・メッセージを転送するために下位レベルの
通信またはメッセージングプロトコル(HTTPまたはSOAPなど)を使用する方法

Profiles

構築と展開の2つの概念

高度な概念

SAML Components

Assertions

通常、アサーションは以下から構成される。

Protocols

いくつかの一般化された要求/応答プロトコルを定義する。

Bindings

トランスポート層上で、プロトコルメッセージをどのように伝達するか?

Profiles

特定シナリオでアサーション、プロトコル、バインディングの組合せ(制約)を定義

EndPoint?

この項目は、SAMLの公式資料にはないが、図を見ると、
EndPoint?には以下の様な名称が付与されている。

SAML XML構造と例

SAMLコンポーネントとの関係

Transport Protocol

Assertion、Subject、Statementの構造

Attribute statementsの構造

が属性に使用されているとは想定していない。

Message構造とSOAP Binding

プライバシー

情報技術の文脈では、プライバシは一般に、

の両方を指す。

ユーザの能力

メカニズム

仮名の確立をサポート

セキュリティ

公開鍵基盤(PKI)に依存する信頼関係を推奨

HTTP over SSL 3.0またはTLS 1.0を推奨

主要ProfileとFederationのUseCase?

Web Browser SSO Profile

使用される可能性が高い典型的なフロー

概要

主に2つのオプションがある。

SP-Initiated SSO: Redirect/POST Bindings

SP-Initiated SSO

SP-Initiated SSO: POST/Artifact Bindings

SP-Initiated SSO

IdP-Initiated SSO: POST Binding

もともとSAML v1でサポートされていたIdP-Initiated SSOユースケースを引き続きサポート

ECP Profile

Enhanced Client and Proxy(ECP)プロファイル

概要

を考慮に入れたプロファイル

※ 昔の携帯電話(ガラケー)など機能の貧弱なDEVICEを想定して
 作成された仕様であるため、昨今はあまり使われないと思う。

ECP Profile Using PAOS Binding

PAOS(Reverse SOAP)という単一のバインディングを定義

Single Logout Profile

概要

SP-Initiated Single Logout with Multiple SPs

Establishing and Managing Federated Identities

Federated Identitiesを確立・管理するSAMLメカニズムの説明

概要

フェデレーションスタイル

Federation Using Out-of-Band Account Linking

Federation Using Persistent Pseudonym Identifiers

Federation Using Transient Pseudonym Identifiers

Federation Termination

既存のフェデレーションの終了。

Use of Attributes

SAMLアサーションによる、属性転送機能と、その属性の使い方。

プロファイル情報の転送

IdPからSPへユーザプロファイル情報を伝達して使用する。

属性に基づく承認

詳細

SAML Profiles

SAML Bindings

SAML Core

SAML Protocols

SAML Assertions

SAML Signature or Encryption

構築と展開の2つの概念

SAML Metadata

Authentication Context

SAMLを実装する。

以下、参考

OASIS

OASISは「SGML Open」として1993年、

主に「研修活動を通じたSGMLの採用促進を目的として」結成された、

SGMLツール業者の業界団体。

SAML 1.0

SAML 1.1

SAML 2.0

http://docs.oasis-open.org/security/saml/v2.0/saml-2.0-os.zip

Reference

用語集

適合要件

セキュリティとプライバシーに関する考慮事項

SAMLのセキュリティとプライバシーの特性について分析/説明。

Security

http://www.oasis-open.org/committees/security/.

WSS

http://www.oasis-open.org/committees/wss/

XML(W3C)

Else

参考

SAML XML.org

SAML 公式サイト

医療分野共通認証基盤整備コンソーシアム

用語

#用語説明
Attribute Assertion
属性アサーション
Subjectの属性に関する情報を伝えるAssertion。
Authentication Assertion
認証アサーション
Subjectに対して行われた認証に関する情報を伝達するアサーション。
Authorization Decision Assertion
認可決定アサーション
Subjectに対して決定された認可に関する情報を伝達するアサーション。
SAML Authority
SAML オーソリティ
Assertionを発行する抽象的なSystem Entity。
Attribute Authority
属性オーソリティ
属性アサーションを生成するSystem Entity。
Authentication Authority
認証オーソリティ
認証アサーションを生成するSystem Entity。
Principal
プリンシパル
ID が認証可能なSystem Entity。
Party
当事者
1つ以上の不特定のプリンシパル。
Asserting Party
アサーティングパーティ
形式的には、一つ以上の SAML オーソリティをホストする管理ドメイン。非公式には、そのインスタンス。
Provider
プロバイダ
IdPとSPの総称(System Entity)。
Identity Provider(IdP)
アイデンティティプロバイダ
プリンシパルの ID 情報を作成、維持、及び管理し、他のサービスプロバイダに契約の範囲でプリンシパルの認証を提供するプロバイダ。
Service Provider(SP)
サービスプロバイダ
プリンシパルまたは他のSystem Entityにサービスを提供するプロバイダ。
Relying Party(RP)
当事者
別のSystem Entityからの情報に基づいて動作が決まるSystem Entity。
SAML Requestor
SAMLリクエスタ
サービス要求のために SAML プロトコルを利用するSystem Entity
SAML Responder
SAMLレスポンダ
サービス要求に応答するために SAML プロトコルを利用するSystem Entity
Policy Enforcement Point(PEP)
ポリシー実行点
PDP に認可決定要求を送信し、応答で送信される認可決定アサーションを受け付ける。
Policy Decision Point(PDP)
ポリシー決定点
認可決定要求を受け付けて、応答の認可決定アサーションを生成する。
Front Channel
フロントチャンネル
UAなどの仲介者を経由するエンドポイント
Back Channel
バックチャネル
UAなどの仲介者を経由しないエンドポイント

機能概要

通信フローの概要

OSSTech

OpenSSO社内勉強会第二回 - SAML -

https://www.osstech.co.jp/_media/techinfo/opensso/osstech-opensso-study-02-saml.pdf

概要

詳細

SAMLの構成要素

クラウド時代の シングルサインオン

https://www.osstech.co.jp/_media/techinfo/seminar/hbstudy-20110416-sso.pdf

概要

用語

※同じ言葉でも、他のプロトコルでは意味が違うことがあるので注意

シーケンス

アサーション

事前に IdP の証明書を SP に登録しておく必要がある(JWTみたいなもの)

<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
  Version="2.0"
  ID="s2907181983bc6f588aeb045fca183d671224506ec"
  IssueInstant="2009-11-18T08:28:09Z">
    アサーション発行者
    アサーションのデジタル署名
    ユーザー識別子(NameID)
</saml:Assertion>

認証要求・認証応答

ネットワーク構成

OpenAMのSAML利用時の認証方式の指定について

https://www.osstech.co.jp/_media/techinfo/openam/saml_authncontext_20150417.pdf

認証方式の指定

<AuthnContextClassRef?>を使用する。

OpenAMの実装を把握する

Cybozu

SAML認証ができるまで Cybozu Inside Out サイボウズエンジニアのブログ

http://developer.cybozu.co.jp/tech/?p=4224

SAMLはSecurity Assertion Markup Languageの略で、OASIS3によって策定された、
異なるセキュリティドメイン間で、認証情報を連携するためのXMLベースの標準仕様。

用語

仕様

シーケンス

Web Browser SSO Profileのシーケンス

要件

Web Browser SSO Profileの要件

SAML認証を使用したシングルサインオンを設定する - cybozu.com ヘルプ

https://jp.cybozu.help/general/ja/admin/list_externalservices/list_saml/saml_settings.html

SP Initiated な Web Browser SSO Profile

SAMLリクエストとSAMLレスポンスには、次のバインディングを使用する。

フロー

設定

Wikipedia

en

ja


Tags: :IT国際標準, :認証基盤, :クレームベース認証, :SAML


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS