Informations techniques
Sécurisation des services Web
Les services Web de la plateforme SOA sont sécurisés à deux niveaux. Au niveau du transport, le service consumer doit obligatoirement établir une connexion via le protocole SSL/TLS. Au niveau du message, l'authentification du service consumer s'effectue sur base des certificats X.509.
Les standards WS-Security utilisés sont décrits dans les spécifications suivantes :
Politique de sécurité
Dans le fichier WSDL au niveau du bloc binding, la politique de sécurité est bien spécifiée pour chaque opération.
<wsdl:operation name="checkAccessControl">
<wsdl:documentation>v1.2: added new operation</wsdl:documentation>
<soap11:operation soapAction=""/>
<wsdl:input>
<soap11:body use="literal"/>
<wsp:PolicyReference URI="#X509_SHA256"
xmlns:wsp="https://schemas.xmlsoap.org/ws/2004/09/policy"/>
</wsdl:input>
<wsdl:output>
<soap11:body use="literal"/>
</wsdl:output>
<wsdl:fault name="systemError">
<soap11:fault name="systemError" use="literal"/>
</wsdl:fault>
</wsdl:operation>
- #X509 pour X.509 Certificate Token Profile;
- #SAML_HOK pour SAML Token Profile/Holder of Key
Erreur
Lorsque la plateforme SOA n'accepte pas une requête en raison d'une erreur de sécurité, une erreur SOAP avec le code d'erreur suivant est renvoyée : SOA-01001 – Service call not authenticated.
<soapenv:Fault>
<faultcode>soapenv:Client</faultcode>
<faultstring>SOA-01001</faultstring>
<detail>
<SystemError Id="44ae07df-bd39-40d2-94f9-f149c047b589"
xmlns="https://socialsecurity.be/errors/v1">
<Origin>Consumer</Origin>
<Code>SOA-01001</Code>
<Message xml:lang="en">Service call not authenticated.</Message>
<Environment>Production</Environment>
</SystemError>
</detail>
</soapenv:Fault>