マイクロソフト系技術情報 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 公式サイト

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

用語

#用語説明
1Principal
プリンシパル
ID が認証可能なSystem Entity(通常は、ユーザ)。
2Subject
主体
SAMLアサーションに含まれるプリンシパル
3Profile
プロファイル
いくつかの目的のひとつのルールの集合。
4System Entity
システムエンティティ
コンピュータ/ネットワークシステムのアクティブな要素。
5Provider
プロバイダ
IdPとSPの総称(System Entity)。
6Identity Provider(IdP)
アイデンティティプロバイダ
プリンシパルの ID 情報を作成、維持、及び管理し、他のサービスプロバイダに契約の範囲でプリンシパルの認証を提供するプロバイダ。
7Service Provider(SP)
サービスプロバイダ
プリンシパルまたは他のSystem Entityにサービスを提供するプロバイダ。
8Attribute Assertion
属性アサーション
Subjectの属性に関する情報を伝えるAssertion。
9Authentication Assertion
認証アサーション
Subjectに対して行われた認証に関する情報を伝達するアサーション。
10Authorization Decision Assertion
認可決定アサーション
Subjectに対して決定された認可に関する情報を伝達するアサーション。
11Security Assertion
セキュリティアサーション
セキュリティアーキテクチャのコンテキストで精査されたアサーション。
12SAML Authority
SAML オーソリティ
Assertionを発行する抽象的なSystem Entity。
13Attribute Authority
属性オーソリティ
属性アサーションを生成するSystem Entity。
14Authentication Authority
認証オーソリティ
認証アサーションを生成するSystem Entity。
15Session Authority
セッションオーソリティ
セッションに関連する状態を保持しているSystem Entityの役割≒IdP。
16Party
当事者
1つ以上の不特定のプリンシパル。
17Asserting Party
アサーティングパーティ
形式的には、一つ以上の SAML オーソリティをホストする管理ドメイン。非公式には、そのインスタンス。
18Relying Party(RP)
当事者
別のSystem Entityからの情報に基づいて動作が決まるSystem Entity。
19Policy Enforcement Point(PEP)
ポリシー実行点
PDP に認可決定要求を送信し、応答で送信される認可決定アサーションを受け付ける。
20Policy Decision Point(PDP)
ポリシー決定点
PEP から認可決定要求を受け付けて、応答の認可決定アサーションを生成する。
21SAML Requestor
SAMLリクエスタ
サービス要求のために SAML プロトコルを利用するSystem Entity
22SAML Responder
SAMLレスポンダ
サービス要求に応答するために SAML プロトコルを利用するSystem Entity
23SAML Artifact
SAMLアーティファクト
固定サイズの構造化されたデータオブジェクトで間接参照して SAML プロトコルメッセージを取得する
24Front Channel
フロントチャンネル
UAなどの仲介者を経由するエンドポイント
25Back 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はSecurity Assertion Markup Languageの略で、OASIS3によって策定された、
異なるセキュリティドメイン間で、認証情報を連携するためのXMLベースの標準仕様。

用語

仕様

シーケンス

Web Browser SSO Profileのシーケンス

要件

Web Browser SSO Profileの要件

cybozu.com ヘルプ

SP Initiated な Web Browser SSO Profile

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

フロー

設定

Wikipedia

en

ja


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


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