SAML 2.0
SSOサービスはリクエストを検証し、XHTMLフォームを含むドキュメントで応答する。
RelayStateパラメータの値は、ステップ 3から保存されている。 SAMLResponseパラメータの値は、次の<samlp:Response>要素のbase64エンコーディングである:
5. SPにアサーション・コンシューマー・サービスを要求する
ユーザ・エージェントは、サービス・プロバイダのアサーション・コンシューマー・サービスにPOSTリクエストを発行する。
ここで、SAMLResponseおよびRelayStateパラメータの値は、ステップ 4のXHTMLフォームから取得される。
6. ターゲット・リソースにリダイレクト
アサーション・コンシューマー・サービスは、レスポンスを処理し、サービス・プロバイダでセキュリティ・ コンテキストを作成し、ユーザ・エージェントをターゲット・リソースにリダイレクトする。
7. SPにターゲット・リソースを再リクエスト
ユーザーエージェントは、サービスプロバイダーにターゲット・リソースをリクエストする(再度):
8. 要求されたリソースを応答する
セキュリティ・コンテキストが存在するので、サービス・プロバイダはリソースをユーザ・エージェントに返す。
アイデンティティ・プロバイダーと同様に、サービスプロバイダーはそれ自体に関するデータを<md:EntityDescriptor>要素で公開する:
このエンティティ記述子についての詳細は次の通り:
entityID属性は、エンティティのユニークな識別子である。
validUntil 属性は、メタデータの失効日を示す。
<ds:Signature>要素(簡略化のため省略)には、メタデータの真正性と完全性を保証するデジタル署名が含まれている。
<md:Organization> 要素で識別される組織は、エンティティ記述子(SAMLMetaのセクション 2.3.2)で記述された「エンティティに責任を持つ」組織であることを示している。
<md:ContactPerson>要素に含まれるコンタクト情報は、そのエンティティに責任を持つテクニカルコンタクトを特定する。複数のコンタクトやコンタクトタイプが可能である。SAMLMetaのセクション 2.3.2.2を参照のこと。
定義上では、サービス・プロバイダーは、SAMLProfで指定されたSAML WebブラウザSSOプロファイルをサポートするアサーション・コンシューマー・サービスを管理する。 次のセクションで示す<md:SPSSODescriptor>要素で示されているサービス・プロバイダーが例として挙げられる。
これは、SAML 2.0 Web Browser SSO Profile(SAMLProf)の複雑な展開であり、サービスプロバイダ(SP)とアイデンティティプロバイダ(IdP)の両方がHTTPアーティファクト・バインディングを使用している。 両方のアーティファクトは、HTTP GET でそれぞれのエンドポイントに配信される。
メッセージの流れは、SPのセキュアなリソースへのリクエストから始まる:
1. SPでターゲット・リソースをリクエスト
プリンシパルは、(HTTPユーザーエージェントを介して)サービス・プロバイダにターゲットリソースを要求する:
サービス・プロバイダは、ターゲットリソースに代わって、セキュリティ チェックを実行する。 サービス・プロバイダに有効なセキュリティコンテキストがすでに存在する場合は、ステップ2–11をスキップする。
2. IdPのシングルサインオン(SSO)サービスへのリダイレクト
サービス・プロバイダは、ユーザーエージェントをアイデンティティ・プロバイダのシングルサインオン(SSO)サービスにリダイレクトする。 リダイレクトURLには、RelayStateパラメータとSAMLartパラメータが付加される。
3. IdPへのSSOサービスのリクエスト
ユーザ・エージェントは、アイデンティティ・プロバイダに SSO サービスを要求する。
ここで、tokenは、サービスプロバイダで保持されている状態情報への不透明な参照であり、artifact_1は、SAMLアーティファクトであり、いずれもステップ 2で発行されたものである。
4.