Configuration du chiffrement pour protéger la confidentialité des messages à l'aide d'API WSS

Vous pouvez configurer des informations de chiffrement pour les liaisons du générateur (émetteur) côté client. Ces informations de chiffrement permettent d'indiquer comment les générateurs (émetteurs) chiffrent les messages SOAP sortants. Pour configurer le chiffrement, indiquez les parties des messages à chiffrer, ainsi que les méthodes d'algorithmes et les jetons de sécurité utilisés pour le chiffrement.

Avant de commencer

La confidentialité fait référence au chiffrement alors que l'intégrité désigne la signature numérique. La confidentialité permet d'éviter qu'une personne puisse comprendre le contenu d'un message transmis via Internet. Lorsque des spécifications de confidentialité sont définies, le message est chiffré avant d'être envoyé et déchiffré sur le cible à laquelle il était destiné. Avant de configurer le chiffrement, familiarisez-vous avec le chiffrement XML.

Pourquoi et quand exécuter cette tâche

Pour le chiffrement, vous devez indiquer ce qui suit :
  • les parties du message à chiffrer,
  • les algorithmes de chiffrement à préciser.

Pour configurer le chiffrement et les parties chiffrées côté client, utilisez les API WSSEncryption et WSSEncryptPart ou configurez des ensembles de règles à l'aide de la console d'administration.

WebSphere Application Server fournit les valeurs par défaut des liaisons. Toutefois, un administrateur doit modifier les valeurs par défaut pour le cas d'un environnement de production.

WebSphere Application Server utilise les informations de chiffrement pour que le générateur par défaut chiffre les parties du message SOAP. L'API WSSEncryption configure les parties requises ci-après en tant que parties chiffrées.

Tableau 1. Parties chiffrées obligatoires. Utilisation des parties chiffrées pour renforcer la confidentailité des messages SOAP.
Portions chiffrées Description
Mots clés Les mots clés servent à ajouter les parties chiffrées au message SOAP.
Expression XPath Les expressions XPath servent à ajouter les parties chiffrées au message SOAP.
Objet WSSEncryptPart Cet objet ajoute les parties chiffrées au message SOAP.
Objet WSSSignature Cet objet ajoute le composant de signature comme partie chiffrée.
En-tête Cette partie ajoute l'en-tête dans l'en-tête SOAP, indiqué par QName, comme portion chiffrée.
Objet de jeton de sécurité Cet objet ajoute le jeton de sécurité comme partie chiffrée.

L'API Web Services Security (API WSS) supporte le chiffrement symétrique en utilisant une clé partagée, uniquement en cas d'emploi de Web Services Secure Conversation (WS-SecureConversation).

Les API WSS permettent d'utiliser des mots clés ou une expression XPath pour indiquer les parties du message à chiffrer. WebSphere Application Server prend en charge l'utilisation des mots clés suivants :

Tableau 2. Mots clés de chiffrement pris en charge. Utilisation de mots clés pour spécifier les portions chiffrées.
Mot clé Références
BODY_CONTENT Mot clé pour le corps du message SOAP comme cible de chiffrement.
SIGNATURE Mot clé pour l'élément de signature comme cible de chiffrement.

Dans le cas d'une configuration avec des API WSS, les API WSSEncryption et WSSEncryptPart effectuent les étapes de niveau élevé ci-après :

Procédure

  1. Utilisez l'API WSSEncryption pour configurer le chiffrement. L'API WSSEncryption effectue ces tâches par défaut :
    1. Génère le gestionnaire d'appel.
    2. Génère l'objet du jeton de sécurité du générateur.
    3. Ajoute le type de référence du jeton de sécurité.
    4. Ajoute le composant de signature.
    5. Ajoute l'objet WSSEncryptPart.
    6. Ajoute les parties à chiffrer. Ajoute les parties par défaut comme cibles de chiffrement à l'aide de mots clés et d'expressions XPath.
    7. Ajoute l'en-tête dans le message SOAP, indiqué par QName.
    8. Définit la méthode de chiffrement de données par défaut.
    9. Indique si la clé doit être chiffrée à l'aide d'une valeur Boolean.
    10. Définit la méthode de chiffrement de clé par défaut.
    11. Sélectionne une référence de la partie.
    12. Définit la valeur Boolean d'optimisation MTOM.
  2. Utilisez l'API WSSEncryptPart pour configurer les parties chiffrées ou ajouter une méthode de transformation. L'API WSSEncryptPart effectue ces tâches par défaut :
    1. Définit les parties chiffrées indiquées à l'aide de mots clés ou d'une expression XPath.
    2. Définit les parties chiffrées indiquées par une expression XPath.
    3. Définit l'objet du composant de signature WSSSignature.
    4. Définit l'en-tête dans le message SOAP, indiqué par QName.
    5. Définit le jeton de sécurité du générateur.
    6. Ajoute la méthode de transformation, si besoin est.
  3. Modifiez les valeurs par défaut de l'algorithme ou des parties du message, si besoin est. Par exemple, vous pouvez modifier un ou plusieurs des éléments suivants :
    • Remplacer la valeur par défaut de l'algorithme de chiffrement de données par AES 128.
    • Remplacer la valeur par défaut de l'algorithme de chiffrement de clés par KW_RSA_OAEP.
    • Indiquer que la clé ne doit pas être chiffrée (false).
    • Remplacer la valeur par défaut du type de jeton de sécurité par celle du jeton X.509.
    • Remplacer la valeur par défaut du type de référence du jeton de sécurité par SecurityToken.REF_STR.
    • Utiliser uniquement BODY_CONTENT comme portion chiffrée, mais pas SIGNATURE.
    • Activer l'optimisation MTOM (true).

Résultats

Les informations de chiffrement sont configurées pour la liaison de générateur.

Exemple

Ci-après un exemple de l'API WSSEncryption :
WSSFactory factory = WSSFactory.getInstance();
    WSSGenerationContext gencont = factory.newWSSGenerationContext();
   
    X509GenerateCallbackHandler callbackhandler = generateCallbackHandler();
    SecurityToken token = factory.newSecurityToken(X509Token.class, callbackHandler);
    WSSEncryption enc = factory.newWSSEncryption(token);
    
    gencont.add(enc);

Que faire ensuite

Si ce n'est pas déjà fait, vous devez configurer des informations de déchiffrement semblables pour les liaisons du destinataire (récepteur) de réponses côté client.

Consultez ensuite le processus de l'API WSSEncryption.


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_configencryptinfogenjaxws
Nom du fichier : twbs_configencryptinfogenjaxws.html