Configuration des ensembles de règles et des liaisons pour la communication avec le service de jeton de sécurité (STS)
La configuration des ensembles de règles et des documents de liaison permet aux clients de services web de demander des assertions SAML à un service de jeton de sécurité (STS) externe.
Avant de commencer
Pourquoi et quand exécuter cette tâche
La configuration d'une liaison spécifique à une application en vue de l'accès à un STS est plus compliquée. La console administrative est conçue pour gérer des associations d'ensembles de règles pour communiquer avec un fournisseur de services web. Elle n'est pas prévue pour gérer un second jeu d'associations d'ensembles de règles pour communiquer avec un service STS. En suivant la procédure ci-dessous, vous pouvez cependant l'utiliser pour la gestion d'une association d'ensembles de règles pour l'accès à un STS.
Associez à un client de services web l'ensemble de règles utilisé pour l'accès au service STS, puis créez ou modifiez une liaison spécifique à une application. Une fois la configuration de la liaison terminée, dissociez l'ensemble de règle et la liaison du client de services Web. Cette opération est indispensable, car l'étape suivante consiste à associer l'ensemble de règles et les liaisons pour communiquer avec le fournisseur de services Web. Les liaisons spécifiques à une application qui ont été dissociées ne sont pas supprimées du système de fichiers, et les propriétés personnalisées de liaisons de client de services Web peuvent les référencer.
Dans la procédure, l'ensemble de règles d'application par défaut Username WSHTTPS est utilisé pour illustrer les étapes de la configuration de l'accès au service STS. La procédure est applicable à d'autres ensembles de règles. La procédure utilise également l'application de services Web JaxWSServicesSamples. JaxWSServicesSamples n'est pas installée par défaut.
Procédure
Résultats
- Association d'un ensemble de règles et de liaisons qui propagent les jetons SAML. Par exemple, associez l'ensemble de règles par défaut SAML11 Bearer WSHTTPS Default et la liaison générale SAML Bearer Client Sample au client de services Web.
- L'ensemble de règles par défaut Username WSHTTPS et la liaison spécifique à une application SamlTCSample sont référencés dans la liaison modèle SAML Bearer Client Sample et sont configurés pour accéder au STS externe.
- Le certificat SSL du service STS externe a été récupéré et ajouté au fichier de clés certifiées NodeDefaultTrustStore.
- Pour vérifier l'activation de la fonction, vous pouvez configurer le paramètre de trace : com.ibm.ws.wssecurity.*=all=enabled.
La trace montre que les assertions SAML sont émises par un service STS externe, par exemple :
[8/23/09 18:26:59:252 CDT] 0000001f TrustSecurity 3 Security Token Service response: [8/23/09 18:26:59:392 CDT] 0000001f TrustSecurity 3 <?xml version="1.0" encoding="UTF-8"?><s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <s:Header> <a:Action s:mustUnderstand="1">http://docs.oasis-open.org/ws-sx/ws-trust/200512/RSTRC/IssueFinal</a:Action> <a:RelatesTo>urn:uuid:663A7B27BA8EB2CF9D1251070029934</a:RelatesTo> <o:Security xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" s:mustUnderstand="1"> <u:Timestamp u:Id="_0"> <u:Created>2009-08-23T23:26:57.664Z</u:Created> <u:Expires>2009-08-23T23:31:57.664Z</u:Expires> </u:Timestamp> </o:Security> </s:Header> <s:Body> <trust:RequestSecurityTokenResponseCollection xmlns:trust="http://docs.oasis-open.org/ws-sx/ws-trust/200512"> <trust:RequestSecurityTokenResponse> <trust:Lifetime> <wsu:Created xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2009-08-23T23:26:57.648Z</wsu:Created> <wsu:Expires xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2009-08-24T09:26:57.648Z</wsu:Expires> </trust:Lifetime> <wsp:AppliesTo xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"> <a:EndpointReference> <a:Address>https://taishan.austin.ibm.com:9443/WSSampleSei/EchoService12</a:Address> </a:EndpointReference> </wsp:AppliesTo> <trust:RequestedSecurityToken> <saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" MajorVersion="1" MinorVersion="1" AssertionID="_3c656382-9916-4e5f-9a16-fe0287dfc409" Issuer="http://svt193.svt193domain.com/Trust" IssueInstant="2009-08-23T23:26:57.663Z"> <saml:Conditions NotBefore="2009-08-23T23:26:57.648Z" NotOnOrAfter="2009-08-24T09:26:57.648Z"> <saml:AudienceRestrictionCondition> <saml:Audience>https://taishan.austin.ibm.com:9443/WSSampleSei/EchoService12</saml:Audience> </saml:AudienceRestrictionCondition> </saml:Conditions> <saml:AuthenticationStatement AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password" AuthenticationInstant="2009-08-23T23:26:57.640Z"> <saml:Subject> <saml:SubjectConfirmation> <saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod> </saml:SubjectConfirmation> </saml:Subject> </saml:AuthenticationStatement> <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:SignedInfo> <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/> <ds:Reference URI="#_3c656382-9916-4e5f-9a16-fe0287dfc409"> <ds:Transforms> <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/> <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </ds:Transforms> <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> <ds:DigestValue>YGySZX4VPv25R+oyzFpE0/T/tjs=</ds:DigestValue> </ds:Reference> </ds:SignedInfo> <ds:SignatureValue>eP68...Vr08=</ds:SignatureValue> <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"> <X509Data> <X509Certificate>MII...ymqg3</X509Certificate> </X509Data> </KeyInfo> </ds:Signature> </saml:Assertion> </trust:RequestedSecurityToken> <trust:RequestedAttachedReference> <o:SecurityTokenReference xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <o:KeyIdentifier ValueType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID">_3c656382-9916-4e5f-9a16-fe0287dfc409</o:KeyIdentifier> </o:SecurityTokenReference> </trust:RequestedAttachedReference> <trust:RequestedUnattachedReference> <o:SecurityTokenReference xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <o:KeyIdentifier ValueType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID">_3c656382-9916-4e5f-9a16-fe0287dfc409</o:KeyIdentifier> </o:SecurityTokenReference> </trust:RequestedUnattachedReference> <trust:TokenType>http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1</trust:TokenType> <trust:RequestType>http://docs.oasis-open.org/ws-sx/ws-trust/200512/Issue</trust:RequestType> <trust:KeyType>http://docs.oasis-open.org/ws-sx/ws-trust/200512/Bearer</trust:KeyType> </trust:RequestSecurityTokenResponse> </trust:RequestSecurityTokenResponseCollection> </s:Body> </s:Envelope>