Configuration de la sécurité des services Web à l'aide des API WSS

Les interfaces de programmation de la sécurité des services Web (API WSS) permettent de sécuriser des messages SOAP.

Avant de commencer

La sécurité des services Web prend en charge les modèles de programmation suivants :

  • API de programmation pour sécuriser des messages SOAP avec Web Services Security (API WSS).

    La conception du modèle de programmation d'API a été révisée. La nouvelle conception est un modèle de programmation basé sur une interface et s'appuie sur les normes Web Services Security Version 1.1 ; cependant, la conception inclut également un support pour Web Services Security Version 1.0 qui permet la sécurisation du message SOAP. L'implémentation du modèle de programmation WSS API est une version simplifiée. Elle est basée sur un avant projet pour JSR-183, qui est le JSR de définition de la liaison API Java™ pour la sécurité de service Web. Dans la mesure où le code de l'application a été conçu pour être programmé pour l'interface, un code d'application programmé à l'aide de l'implémentation de la source ouverte doit pouvoir s'exécuter sur WebSphere Application Server avec un minimum de modifications voire aucune.

  • Interfaces SPI (Service Programming Interfaces) pour un fournisseur de services.

    De la même façon, l'interface SPI de génération et de destination de jetons d'exécution pour la sécurité des services Web a été repensée pour que la même interface de jeton de sécurité et la même implémentation du module de connexion JAAS puissent être utilisées pour la SPI et l'API WSS. Les interfaces SPI de WSS du fournisseur de services étendent les types de jeton de sécurité et fournissent des clés et des clés de dérivation pour la signature, la vérification de signature, le chiffrement et le déchiffrement.

Syntaxe : Vous devez utiliser l'implémentation IBM des normes WS-Security dans le contexte des services web.

Pourquoi et quand exécuter cette tâche

Ces modèles de programmation étendent les fonctions suivantes :
  • Types de jeton de sécurité et clés dérivées pour la signature
  • Signature et vérification
  • Chiffrement et déchiffrement

La figure suivante montre comment utiliser les API WSS simplifiées pour sécuriser un message SOAP à l'aide de la signature numérique XML et du chiffrement XML.

Le modèle de configuration des services web a également été re-conçu d'un modèle de descripteur de déploiement en un modèle d'ensemble de règles. Le modèle de programmation de la configuration repose sur la configuration d'ensembles de règles utilisant une stratégie de sécurité pour indiquer des contraintes de sécurité.

Les fonctions proposées par les configurations d'ensemble de règles sont identiques à celles prises en charge par l'API WSS pour le module d'exécution de Web Services Security. Cependant, la règle de sécurité définie à l'aide d'ensembles de règles a la priorité sur l'API WSS. Lorsque l'API WSS et l'ensemble de règles sont tous les deux utilisés dans l'application, la règle de sécurité de l'ensemble de règles est par défaut appliquée et l'API WSS ignorée. Pour utiliser l'API WSS dans l'application, assurez-vous qu'aucun ensemble de règles n'est associé à l'application ou aux ressources de l'application ou vérifiez que l'ensemble de règles lié ne contient aucune règle de sécurité.

Web Service Security peut être activé à l'aide d'un ensemble de règles configuré via la console d'administration, ou à l'aide de l'API WSS pour la configuration.

A l'aide des API WSS; effectuez les étapes suivantes de haut niveau pour sécuriser le message SOAP :

Procédure

  1. Utilisez l'API WSSSignature pour configurer les informations de signature pour la liaison de générateur de la demande (côté client). Des portions de message différentes peuvent être spécifiées dans la protection de message pour une demande côté générateur. Les portions obligatoires par défaut sont BODY, ADDRESSING_HEADERS et TIMESTAMP.

    L'API WSSSignature spécifie les différentes méthodes d'algorithme à utiliser avec la signature pour la protection des messages. La méthode de signature par défautest RSA_SHA1. La méthode de canonisation par défaut est EXC_C14N.

  2. Utilisez l'API WSSSignPart pour ajouter ou modifier les portions signées à utiliser pour la protection des messages. Les portions signées par défaut sont WSSSignature.BODY, WSSSignature.ADDRESSING_HEADERS et WSSSignature.TIMESTAMP.

    L'API WSSSignPart spécifie les différentes méthodes d'algorithme à utiliser si vous avez ajouté ou modifié des portions signées. La méthode de synthèse par défaut est SHA1. La méthode de transformation par défaut est TRANSFORM_EXC_C14N. Par exemple, utilisez l'API WSSSignPart si vous souhaitez générer la signature pour le message SOAP à l'aide de la méthode de synthèse SHA256 à la place de la valeur par défaut de SHA1.

  3. Utilisez l'API WSSEncryption pour configurer les informations de chiffrement côté générateur de la demande. Les informations de chiffrement côté générateur servent à chiffrer un message SOAP sortant pour les liaisons de générateur de demande (côté client). Les cibles par défaut de chiffrement sont BODY_CONTENT et SIGNATURE.

    L'API WSSEncryption spécifie également les différentes méthodes d'algorithme à utiliser pour protéger la confidentialité des messages. La méthode de chiffrement des données par défaut est AES128. La méthode clé de chiffrement de données par défaut est KW_RSA_OAEP.

  4. Utilisez l'API WSSEncryptPart pour ajouter ou modifier les portions chiffrées à utiliser pour la confidentialité des messages. Par exemple, si vous souhaitez changer la méthode de chiffrement de données par défaut AES128 en TRIPLE_DES.

    Aucune méthode d'algorithme n'est requise pour les portions chiffrées.

  5. Utilisez l'API WSS pour associer le jeton côté générateur. Les exigences requises pour le jeton de sécurité dépendent du type de jeton. Le module de connexion JAAS et le gestionnaire CallbackHandler JAAS ont la charge de la création du jeton de sécurité côté générateur. Des jetons autonomes différents peuvent être envoyés dans la demande ou la réponse. Le jeton par défaut est le jeton X509Token. L'autre jeton pouvant être utilisé pour la signature est DerivedKeyToken, qui peut être employé uniquement avec WS-SecureConversation (Web Services Secure Conversation).
  6. Utilisez l'API WSSVerification pour vérifier la signature pour la liaison de destinataire de la réponse (côté client). Des portions de message différentes peuvent être spécifiées dans la protection de message pour une réponse côté destinataire. Les portions obligatoires sont BODY, ADDRESSING_HEADERS et TIMESTAMP.

    L'API WSSVerification spécifie également les différentes méthodes d'algorithme à utiliser pour la vérification de la signature et pour la protection des messages. La méthode de signature par défautest RSA_SHA1. La méthode de canonisation par défaut est EXC_C14N.

  7. Utilisez l'API WSSVerifyPart pour ajouter ou modifier les portions signées à vérifier pour la protection des messages. Les portions à vérifier obligatoires sont WSSVerification.BODY, WSSVerification.ADDRESSING_HEADERS et WSSVerification.TIMESTAMP.

    L'API WSSVerifyPart indique également les diverses méthodes d'algorithme à utiliser si vous avez ajouté ou modifié les portions à vérifier. La méthode de synthèse par défaut est SHA1. La méthode de transformation par défaut est TRANSFORM_EXC_C14N.

  8. Utilisez l'API WSSDecryption pour configurer les informations de déchiffrement pour la liaison de destinataire de la réponse (côté client). Les informations de déchiffrement côté destinataire permettent de déchiffrer un message SOAP entrant. Les cibles par défaut de déchiffrement sont BODY_CONTENT et SIGNATURE. La méthode de chiffrement des données par défaut est AES128. La méthode clé de chiffrement de données par défaut est KW_RSA_OAEP.

    Aucune méthode d'algorithme n'est requise pour le déchiffrement.

  9. Utilisez l'API WSSDecryptPart pour ajouter ou modifier les portions déchiffrées à utiliser pour la confidentialité des messages. Par exemple, si vous souhaitez changer la méthode de chiffrement de données par défaut AES128 en TRIPLE_DES.

    Aucune méthode d'algorithme n'est requise pour les portions déchiffrées.

  10. Utilisez l'API WSS pour configurer le jeton côté destinataire. Les exigences requises pour le jeton de sécurité dépendent du type de jeton. Le module de connexion et le gestionnaire d'appel JAAS sont chargés de valider (authentifier) le jeton de sécurité côté destinataire. Des jetons autonomes différents peuvent être envoyés dans la demande ou la réponse.

    L'API WSS ajoute les informations pour le jeton candidat utilisé pour déchiffrement. Le jeton par défaut est X509Token.

Résultats

Que faire ensuite

Les interfaces SPI (Services Programming Interfaces) de génération et de destination de jetons d'exécution pour la sécurité des services Web ont été repensées afin que la même interface de jeton de sécurité et la même implémentation du module de connexion JAAS puissent être utilisées dans la SPI et l'API WSS. Voir les informations sur la SPI pour des descriptions plus détaillées.


Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_confwssapi
Nom du fichier : twbs_confwssapi.html