メッセージ保護に X509Token 対称を使用した SAMLToken
SAML トークンが認証に使用されます。要求内の SAML トークンと、要求および応答内の SOAP 本体には、X509Token 対称メッセージ保護で署名と暗号化が行われます。 また、メッセージ・タイム・スタンプもあります。
X509Token 対称保護では、一時鍵を作成してメッセージの署名と暗号化を行います。 一時鍵は、受信側のパブリック証明書を使用して暗号化されます。
以下のサンプルで、トークン参照は RequireThumbprintReference を使用しています。 RequireIssuerSerialReference または RequireKeyIdentifierReference を使用するようにポリシーを変更することができます。また、<sp:RequireDerivedKeys /> アサーションを追加することで、一時鍵からの導出鍵を使用してメッセージ交換を保護するように、このポリシーを変更することもできます。クライアントが SAML トークンのみを使用して自身を認証できて、メッセージ交換が署名および暗号化される必要がある場合に、このポリシー・テンプレートの使用が最適です。
以下のポリシーでは、認証に SAML トークン、メッセージ保護に X509Token 対称を使用しています。
<wsp:Policy wsu:Id="X509SymmetricForMessageAndSamlForClient">
<wsp:ExactlyOne>
<wsp:All>
<sp:SignedEncryptedSupportingTokens
xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
<wsp:Policy>
<sp:SamlToken
sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
<wsp:Policy>
<sp:WssSamlV20Token11/>
</wsp:Policy>
</sp:SamlToken>
</wsp:Policy>
</sp:SignedEncryptedSupportingTokens>
<sp:SymmetricBinding>
<wsp:Policy>
<sp:ProtectionToken>
<wsp:Policy>
<sp:X509Token
sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/Never">
<wsp:Policy>
<sp:RequireThumbprintReference />
<sp:WssX509V3Token10 />
</wsp:Policy>
</sp:X509Token>
</wsp:Policy>
</sp:ProtectionToken>
<sp:AlgorithmSuite>
<wsp:Policy>
<sp:Basic128 />
</wsp:Policy>
</sp:AlgorithmSuite>
<sp:Layout>
<wsp:Policy>
<sp:Strict />
</wsp:Policy>
</sp:Layout>
<sp:IncludeTimestamp />
<sp:OnlySignEntireHeadersAndBody />
<sp:EncryptSignature />
</wsp:Policy>
</sp:SymmetricBinding>
<sp:Wss11>
<wsp:Policy>
<sp:MustSupportRefKeyIdentifier />
<sp:MustSupportRefIssuerSerial />
<sp:MustSupportRefThumbprint />
<sp:MustSupportRefEncryptedKey />
<sp:RequireSignatureConfirmation />
</wsp:Policy>
</sp:Wss11>
<sp:SignedParts>
<sp:Body />
</sp:SignedParts>
<sp:EncryptedParts>
<sp:Body />
</sp:EncryptedParts>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>