Une application correspondant à un client de service Web peut obtenir la configuration de règles d'un fournisseur de services Web à partir d'un registre et utiliser ces informations afin d'établir une configuration de règles acceptable pour le client et le fournisseur de services.
Avant de commencer
Vous avez développé un client de service Web contenant tous les artefacts
nécessaires et déployé votre application de services Web sur votre instance
de serveur d'applications. Si vous en avez besoin, vous avez associé les ensembles de règles et géré les liaisons associées.
Le
WSDL (Web Services Description Language) des règles du fournisseur de services, les règles correspondantes et les annexes des règles sont stockés dans un
registre tel que WSRR. Ces règles doivent contenir leur configuration
au format WS-PolicyAttachments. Le client doit pouvoir prendre en charge les règles du fournisseur.
Le registre doit permettre l'utilisation des requêtes HTTP GET pour publier le WSDL qui contient les annexes WS-Policy, par exemple WSRR version 6.2 ou ultérieure.
Pour
obtenir la liste des spécifications d'assertion WS-Policy et des domaines
WS-Policy pris en charge, reportez-vous à la rubrique WS-Policy.
Pourquoi et quand exécuter cette tâche
Vous pouvez administrer le client pour qu'il se configure lui-même dynamiquement au moment de l'exécution sur la base de la règle d'un fournisseur de services conservée dans un registre.
Vous pouvez administrer le client au niveau du service ou
de la référence de service
pour qu'il applique dynamiquement la règle du fournisseur obtenue d'un registre. Par défaut, des noeuds finaux ou des opérations héritent la configuration de leurs règles du service adapté.
Toutefois, il est possible de configurer une référence
de service pour remplacer le service, auquel cas, les noeuds finaux et les
opérations héritent de leur configuration de règles par la référence de
service.
Vous ne pouvez pas administrer le client pour qu'il applique dynamiquement la règle du fournisseur obtenue d'un registre au niveau de l'application.
Vous pouvez configurer la règle du client afin qu'elle utilise une règle de fournisseur de services stockée dans un registre à l'aide de la console d'administration. Vous pouvez également configurer la règle du client afin qu'elle utilise une règle de fournisseur de services stockée dans un registre à l'aide des commandes wsadmin.
Procédure
- A partir du panneau de navigation de la console d'administration, cliquez sur
.
- Cliquez sur l'application client de service Web que vous souhaitez configurer.
- Cliquez sur .
- Sur la ligne du service auquel vous souhaitez appliquer la règle, cliquez sur le lien dans la colonne Règles appliquées. Vous ne pouvez pas appliquer la règle au niveau de l'application. Le panneau Règles
appliquées s'affiche.
- Sélectionnez l'une des options suivantes dans la liste déroulante suivante :
- Règle du fournisseur uniquement. Configure le client uniquement en fonction de la règle du fournisseur de services. Cette option est disponible lorsqu'aucun ensemble de règles du client n'est associé.
- Règle du fournisseur et du client. Configure le client en fonction de l'ensemble de règles du client et de la règle du fournisseur de services.
Cette option est disponible lorsqu'un ensemble de règles du client est associé.
Les autres options de la liste ne s'appliquent pas à cette tâche.
- Cliquez sur Requête HTTP GET.
- Cliquez sur Indication d'une cible de demande, puis entrez l'URL de l'emplacement des règles du fournisseur
dans la zone prévue à cet effet, à savoir l'adresse dans le référentiel pour le WSDL et la règle. Pour plus d'informations sur l'utilisation de WSRR pour extraire un document WSDL avec des règles intégrées, et obtenir ainsi l'URL requise, reportez-vous à la documentation de WSRR. L'exemple suivant présente une URL classique :
https://www.wsrr.host/WSRR/6.2/PolicyService/
WSDL?bsrURI=3b9b493b-278f-4f64.ba3f.dabd30da3f7e
- Cliquez sur
OK.
- Facultatif : S'il existe une connexion sécurisée utilisant le protocole SSL (Secure Sockets Layer) entre le client et le registre, vous devez
vérifier la sécurité entre le serveur d'applications et le serveur du registre. Pour accéder au registre, le client utilise la règle de transport SSL qui fait partie de sa règle d'application de niveau service. Par exemple, pour WSRR, vous pouvez entrer l'URL du serveur WSRR dans une fenêtre de navigateur. Si le serveur WSRR n'est pas digne de confiance, un message indique que le certificat de sécurité n'est pas digne de confiance. Pour établir la sécurité, procédez comme suit :
- Extrayez et stockez le certificat X509 à partir du serveur WSRR. Les options du message vous permettent d'afficher les détails du certificat et de les enregistrer dans un fichier, en utilisant le format binaire codé DER (Distinguished Encoding Rules).
- Recherchez le magasin de clés que le client utilise, c'est-à-dire le magasin de clés indiqué par les liaisons pour le transport de la sécurité SSL de l'ensemble de règles de l'application client. Voir Configuration de la règle de transport SSL. Par exemple, le magasin de clés peut être le magasin sécurisé par défaut du noeud.
- Ajoutez le certificat signataire que vous avez sauvegardé à l'étape a. au magasin de clés utilisé par le client. Voir Ajout d'un certificat de signataire dans un magasin de clés.
- Facultatif : Pour accéder au registre, le client utilise la règle de transport qui fait partie de sa règle d'application de niveau service. Si le registre requiert l'authentification à l'aide du protocole HTTP, configurez un nom d'utilisateur et un mot de passe valides lors de la configuration des liaisons de règles de transport au niveau des applications. Il est conseillé de sécuriser toutes les données
d'identification d'autorisation, car elles sont utilisées pour les interactions avec le registre et le noeud final de service Web.
- Vérifiez que le client possède un ensemble de règles qui contient la règle de transport HTTP associée au niveau du service ou de l'application.
Reportez-vous aux étapes correspondantes dans Gestion des ensembles de règles et des liaisons pour les clients de services au niveau de l'application à l'aide de la console d'administration.
- Configurez les liaisons du client de transport HTTP pour la liaison appelée modèle Client, puis entrez le nom d'utilisateur et le mot de passe nécessaires au registre pour authentifier les demandes de service sortantes. Reportez-vous aux étapes correspondantes dans Configuration de la règle de transport HTTP.
- Sauvegardez les modifications dans la configuration principale.
Résultats
La règle coté client d'une application
Web est calculée quand elle est demandée au moment de l'exécution sur
la base de la règle du fournisseur de services ou de l'ensemble de
règles du client et de la règle du fournisseur de services, selon
l'option sélectionnée.
Cette règle calculée est appelée la
"règle
effective" et est mise en mémoire cache en tant que paramètre de
configuration d'exécution. La règle effective est utilisée pour les demandes ultérieures de services Web sortantes au noeud final ou à l'opération pour laquelle le calcul de règle dynamique a été effectué. La configuration de l'ensemble de règles du client ne change pas.
La règle du fournisseur que le client détient pour un service est régénérée la première fois que le service Web est appelé après le chargement de l'application. Ensuite, la règle du fournisseur est actualisée lorsque l'application redémarre ou si elle appelle de manière explicite une mise à jour. Une fois les règles du fournisseur régénérées, les règles effectives
sont recalculées.