Présentation des normes et des modèles de programmation pour la sécurité des messages des services Web

Les normes et profils de sécurité des services Web décrivent comment fournir la sécurité et la protection des messages SOAP échangés dans un environnement de services Web.

Pour sécuriser les services Web, vous devez tenir compte d'un large ensemble d'exigences de sécurité, notamment l'authentification, les droits d'accès, la confidentialité, la confiance, l'intégrité, les canaux de communication sécurisés, la délégation et l'audit, à travers un large éventail de topologies d'applications et d'organisation. L'une de ces exigences clés du modèle de sécurité dans l'environnement actuel est la capacité d'interagir avec des technologies de sécurité autrefois incompatibles dans des environnements hétérogènes. L'organigramme des technologies et la pile des protocoles de sécurité des services Web complète sont décrits dans l'article Security in a Web Services World: A Proposed Architecture and Roadmap.

Standards concernant la sécurité des services Web

La spécification WS-Security d'OASIS définit les fonctions principales de protection de l'intégrité et de la confidentialité d'un message et fournit des mécanismes permettant d'associer les réclamations liées à la sécurité au message. La sécurité des services Web est une norme concernant les messages fondée sur la sécurisation des messages SOAP via la signature numérique XML, la confidentialité via le chiffrement XML et la propagation des justificatifs via les jetons de sécurité. WebSphere Application Server prend en charge la version 1.1 de la spécification WS-Security, y compris les fonctions telles que l'en-tête chiffré, la configuration de l'empreinte et de la signature, le profil de jeton username et le profil de jeton X.509. En outre, la prise en charge d'un scénario de sécurité limitée est assurée pour le profil de jeton Kerberos version 1.1, WS-SecureConversation version 1.3, WS-Trust version 1.3 et WS-SecurityPolicy version 1.2.

La spécification Web Services Security SOAP Message Security 1.1 présente un ensemble standard d'extensions SOAP 1.1 que vous pouvez utiliser pour sécuriser des services Web. Ces normes fournissent la protection de l'intégrité et de la confidentialité qui sont généralement implémentées par des technologies de signature numérique et de chiffrement. Par ailleurs, la sécurité des services Web fournit un mécanisme général permettant l'association de jetons de sécurité à des messages. Un exemple typique de jeton de sécurité est un jeton nom d'utilisateur dans lequel un nom d'utilisateur et un mot de passe sont inclus sous forme de texte. La sécurité des services Web définit la méthode à suivre pour coder des jetons de sécurité binaires, tels que les certificats X.509. Cependant, les jetons de sécurité requis ne sont pas définis dans la spécification SOAP Message Security 1.1. En revanche, les jetons sont définis dans des profils distincts, tels que le profil du jeton Nom d'utilisateur, le profil du jeton X.509, etc.

Il est important de noter que la sécurité des services Web peut être utilisée pour assurer la protection de l'intégrité et de la confidentialité au niveau message pour des demandes de message SOAP normales à partir d'un client à un service et des réponses de message SOAP normales d'un service à un client, mais qu'elle ne peut pas être utilisée pour protéger des messages d'erreur SOAP.

Compatibilité entre WS-Security Draft 13 et la norme WS-Security versions 1.0 et 1.1

La norme WS-Security a évolué au fil des ans, de l'état de projet (draft) en norme OASIS. WebSphere Application Server version 5.02 a introduit la prise en charge de WS-Security Draft 13, et celle de WS-Security 1.0 a été introduite tout d'abord par WebSphere Application Server version 6.0. WS-Security version 1.1 est pris en charge par WebSphere Application Server Version 6.1 Feature Pack for Web Services, uniquement via le module d'exécution JAX-WS. La rubrique Spécification de sécurité des services Web - Chronologie fournit des détails supplémentaires sur l'évolution de cette prise en charge.

Il est important de noter qu'un client WS-Security Draft 13 n'est pas compatible avec les fournisseurs qui utilisent WS-Security version 1.0 ou 1.1. Vous devez utiliser un client Draft 13 pour communiquer avec un fournisseur de services Web Draft 13. Vous ne pouvez pas utiliser un client Draft 13 pour communique avec un fournisseur WS-Security version 1.0 ou 1.1. Ce problème est dû au fait que le format des messages SOAP pour l'en-tête et l'espace nom WS-Security est différent dans une application WS-Security Draft 13 et une application WS-Security version 1.0 ou 1.1.

La version de la norme WS-Security utilisée a également un impact sur la version l'application Java™ EE (Java Platform, Enterprise Edition) requise.
  • Java EE version 1.3 est utilisé uniquement avec WS-Security Draft 13.
  • Java EE version 1.4 ou ultérieure est utilisé avec WS-Security version 1.0 (JAX-RPC et JAX-WS), ainsi qu'avec WS-Security version 1.1 (JAX-WS).

Ces remarques liées à la compatibilité sont illustrés dans le diagramme suivant :

Interaction des environnements d'exécution des services Web avec J2EE

Pour sécuriser les services Web avec WebSphere Application Server, vous devez indiquer plusieurs configurations différentes. Bien que ces configurations n'aient pas à apparaître dans un ordre particulier, certaines d'entre elles font référence à d'autres configurations. Voir Remarques sur la configuration de la sécurité des services Web.

En raison des relations existant entre les configurations Web Services Security, il est recommandé d'indiquer les configurations à chaque niveau de la configuration dans l'ordre décrit dans les sections suivantes. Vous pouvez choisir de configurer la sécurité des services Web au niveau de l'application, du serveur ou de la cellule du fait qu'elle dépend des besoins de votre environnement et de la sécurité.

Modèles de programmation applicables à la sécurité des services Web

Vous pouvez utiliser le modèle de programmation JAX-WS (Java™ API for XML-Based Web Services) pour développer des applications et des clients de services Web. JAX-WS constitue la génération future des modèles de programmation de services Web. Il facilite le développement de clients et de services Web en proposant une plus grande indépendance par rapport à la plateforme pour les applications Java via l'utilisation de proxys dynamiques et d'annotations Java. JAX-WS simplifie le développement d'applications via la prise en charge d'un modèle standard, basé sur des annotations, pour développer des applications et clients de services Web. Les applications JAX-WS peuvent être sécurisées avec une sécurité de services Web de deux façons. L'application peut être sécurisée à l'aide d'ensembles de règles, ou via l'utilisation de l'interface WSS API (Web Services Security API). Pour sécuriser des services Web à l'aide du modèle de programmation JAX-WS (Java API for XML-Based Web Services), commencez par la rubrique Sécurisation des services Web JAX-WS à l'aide d'une sécurité au niveau des messages.

La spécification JAX-RPC (Java™ API for XML-based RPC) permet de développer des services Web et des clients de service Web intéropérables et portables reposant sur le protocole SOAP. JAX-RPC 1.1 fournit des API de base pour le développement et le déploiement de services Web sur une plateforme Java et constitue un élément des services Web pour une plateforme Java EE (Java Platform, Enterprise Edition). IBM WebSphere Application Server prend en charge le modèle de programmation JAX-WS ainsi que le modèle de programmation JAX-RPC. JAX-WS constitue la génération future des modèles de programmation de services Web et étend la base fournie par le modèle de programmation JAX-RPC. Pour sécuriser des services Web à l'aide du modèle de programmation JAX-RPC (Java API for XML-based RPC), commencez par la rubrique Sécurisation des services Web JAX-RPC à l'aide d'une sécurité au niveau des messages.


Icône indiquant le type de rubrique Rubrique de concept



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=cwbs_wssecsecureoverview
Nom du fichier : cwbs_wssecsecureoverview.html