Information pour le développeur : développer un client
Tester le canal web service avec SoapUI
Avec l'outil de test SoapUI, vous pouvez rapidement vérifier si votre certificat a bien été enregistré dans la Gestion des accès. Nous faisons cela en utilisant le SecurityTokenService décrit dans WS-Security SAML Token Profile / Holder-of-Key.
Conditions
De quoi avez-vous besoin ?
- SoapUI 5.2.1 ou plus (www.soapui.org Nouvelle fenêtre);
- le certificat y compris la clé privée au format .p12 ou .jks ;
- WSDL + XSD du SecurityTokenService ;
- le numéro d'expéditeur.
Procédure pour accéder à la variante du service qui utilise l'algorithme de signature SHA256
- Créez un nouveau projet dans SoapUI sur base de WSDL (File->New Soap Project).
- Sous Project View > WS-Security Configurations, ajoutez votre ficher .jks ou .p12 (un des deux) comme keystore.
- Sous Project View > WS-Security Configurations, effectuez une nouvelle configuration Outgoing WS-Security sous le nom X.509.
- Définissez le Timestamp.
- Déterminez la Signature avec la configuration suivante et votre propre mot de passe.
Sous « Parts », introduisez les conditions suivantes :
Timestamp http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd Element Body http://schemas.xmlsoap.org/soap/envelope/ Element BinarySecurityToken http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd Element - Définissez le Timestamp.
- Introduisez la requête Soap suivante :
-
Remplacez ###### par votre propre numéro d'expéditeur et utilisez l’URL https://services-sim.socialsecurity.be/SecurityTokenService/v2
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header/> <soap:Body> <wst:RequestSecurityToken Context="abc" xmlns:wst="http://docs.oasis-open.org/ws-sx/ws-trust/200512"> <wst:TokenType>http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1</wst:TokenType> <wst:RequestType>http://docs.oasis-open.org/ws-sx/ws-trust/200512/Issue</wst:RequestType> <wst:Claims Dialect="http://schemas.xmlsoap.org/ws/2006/12/authorization/authclaims"> <auth:ClaimType Uri="urn:be:smals:expeditor:number" xmlns:auth="http://schemas.xmlsoap.org/ws/2006/12/authorization"> <auth:Value>######</auth:Value> </auth:ClaimType> </wst:Claims> </wst:RequestSecurityToken> </soap:Body> </soap:Envelope>
- Sélectionnez Outgoing WSS X.509.
-
Sous Request properties, choisissez : Strip Whitespace = true
-
Remplacez ###### par votre propre numéro d'expéditeur et utilisez l’URL https://services-sim.socialsecurity.be/SecurityTokenService/v2
- Lancez la requête.
Le résultat est une assertion SAML comportant les différents attributs associés à la qualité dans la Gestion des accès (type de qualité, identifiant…).
Codes d'erreur possibles
- Authentication failed : le certificat n'est pas associé à l'expéditeur donné.
- The specific request failed : problème avec l'input (requête même ou signature).
Si l'enregistrement s'est déroulé correctement, vous pouvez commencer à tester les webservices.