Lorsque vous travaillez avec des ensembles de règles dans la console
d'administration, vous pouvez personnaliser des règles afin de garantir la sécurité
des messages. Vous pouvez personnaliser la configuration de la règle du transport HTTP (Hypertext
Transfer Protocol) ou utiliser la règle telle qu'elle est fournie avec les paramètres par défaut.
Avant de commencer
Vous pouvez configurer certains paramètres de règles par défaut pour les ensembles de règles personnalisés. Les ensembles de règles par défaut fournis ne sont pas modifiables. Pour personnaliser un
ensemble de règles, vous devez créer une copie de
l'ensemble de règles par défaut ou créer un ensemble de règles et spécifier les règles pour l'ensemble de règles personnalisé.
Pourquoi et quand exécuter cette tâche
Vous pouvez configurer le transport
HTTP avec la règle de transport HTTP. HTTP est un protocole au niveau des applications pour des systèmes
répartis, collaboratifs d'informations hypermédia. Il s'agit d'un protocole
générique sans état pouvant servir pour de nombreuses tâches au-delà de
l'hypertexte : serveurs de noms et systèmes de gestion d'objets répartis,
extension de méthodes de demande, codes d'erreur et en-têtes. Une fonction de HTTP
consiste à saisir et à négocier la représentation des données, ce qui permet la
génération de systèmes indépendamment des données transférées. Les propriétés des fonctions HTTP et des connexions HTTP s'appliquent aux messages sortants pour le client de service et le fournisseur de services.
Vous pouvez configurer une règle uniquement par l'intermédiaire d'un ensemble de règles. Par
conséquent, un ensemble de règles contenant la règle de transport HTTP doit exister avant de
pouvoir configurer celle-ci. L'ensemble de
règles par défaut WSHTTPS est en lecture seule et ne peut pas être modifié. Pour personnaliser un
ensemble de règles contenant la règle de transport HTTP, vous devez commencer par créer une copie de
l'ensemble de règles par défaut WSHTTPS ou créer un ensemble de règles et y ajouter la règle
de transport HTTP.
Eviter les incidents: L'ensemble de règles par défaut WSHTTPS contient
la règle de transport HTTP, la règle de transport SSL et la règle WS-Addressing.
Si vous n'avez pas besoin de la règle de transport SSL ou de la règle WS-Addressing, vous pouvez personnaliser votre copie de l'ensemble de règles WSHTTPS par défaut pour supprimer les règles dont vous n'avez pas besoin.
gotcha
Dès que vous avez créé une copie de l'ensemble de règles WSHTTPS par défaut ou que vous avez créé un ensemble de règles en lui ayant ajouté la règle de transport HTTP, vous pouvez personnaliser la règle de transport HTTP. Le panneau des paramètres de la règle de transport HTTP permet de personnaliser les valeurs des propriétés de la règle de transport HTTP, comme les valeurs de délai d'expiration de lecture ou d'écriture. Vos valeurs personnalisées pour la règle de transport HTTP
s'appliquent désormais à l'ensemble de règles la contenant. Vous pouvez associer l'ensemble de règles contenant votre règle de transport HTTP personnalisée à votre application JAX-WS (Java API for XML-Based Web Services ), ses services, ses noeuds finaux ou ses opérations. Cette modification affecte toutes les applications JAX-WS auxquelles cet
ensemble de règles est associé. Pour plus d'informations sur l'association des ensembles de règles et des applications, voir la
documentation relative à la gestion des ensembles de règles pour les fournisseurs de services et
les clients de service au niveau de l'application.
Par exemple, si vous disposez de plusieurs ensembles de règles, mypolicyset1 et mypolicyset2, contenant la règle de transport HTTP, vous pouvez personnaliser la règle de transport HTTP pour chaque ensemble de règles afin de refléter les différentes propriétés, comme les valeurs de délai d'expiration. vous pouvez alors associer ces ensembles de règles personnalisés à une ou plusieurs applications et celles-ci utiliseront les valeurs de la propriété HTTP associées à la règle de transport HTTP contenue dans l'ensemble de règles lié.
Procédure
- Créez un ensemble de règles contenant la règle de transport HTTP.
- Créez un ensemble de règles personnalisé.
Dans la console d'administration, cliquez sur . Dans ce panneau, vous pouvez créer un ensemble de règles, copier un ensemble de règles par défaut existant tel que WSHTTPS, importer une copie d'un ensemble de règles à partir du référentiel par défaut ou un ensemble de règles existant à partir d'un emplacement spécifié.
- Ajoutez la règle de transport HTTP à l'ensemble de règles. Dans la console d'administration, cliquez sur . Dans la collection de règles, cliquez sur . La fenêtre Transport HTTP présente les options de
configuration des paramètres HTTP pour la règle de transport.
- Dans la liste déroulante Version du protocole, cliquez sur la version
HTTP à utiliser. HTTP 1.1 est le paramètre par défaut, mais HTTP 1.0 est également disponible. Si
vous sélectionnez HTTP 1.1, la fenêtre Transport HTTP laisse plus de place
à cette fonction, sachant que certaines options ne sont pas disponibles avec HTTP version 1.0.
- Renseignez la section Fonctions HTTP. Les cases à cocher suivantes déterminent les fonctions HTTP activées pour ce transport :
- Session activée
- Indique si la session HTTP est activée à l'envoi d'un message.
- Activer le codage du transfert par blocs
- Indique si le codage de transfert tronqué est activé à l'envoi d'un message. Cette option est uniquement disponible si HTTP 1.1 est sélectionné dans la zone
Version du protocole (elle est grisée et désactivée si vous choisissez HTTP
1.0).
- Envoyer l'en-tête expect "100-request"
- Indique si l'en-tête expect "100-request" est activé à l'envoi d'un message. Cette option est uniquement disponible si HTTP 1.1 est sélectionné dans la zone
Version du protocole (elle est grisée et désactivée si vous choisissez HTTP
1.0).
- Accepter la redirection automatique de l'URL
- Indique si l'URL est automatiquement redirigée à l'envoi d'un message.
- Compresser le contenu de la demande
- Indique si le contenu de la demande est compressé à l'envoi d'un message.
- Compresser le contenu de la réponse
- Indique si le contenu de la réponse est compressé à l'envoi d'un message.
- Renseignez la section Connexions HTTP. Les zones suivantes déterminent la manière de configurer les connexions pour ce transport :
- Délai de lecture
- Indique la durée en secondes du délai de lecture à l'envoi d'un message.
- Délai d'écriture
- Indique la durée en secondes du délai d'écriture à l'envoi d'un message.
- Délai d'expiration de connexion
- Indique la durée en secondes du délai de connexion à l'envoi d'un message.
- Utiliser la connexion persistante
- Indique si une connexion persistante doit être utilisée à l'envoi d'un message. Cette
option est uniquement disponible si HTTP 1.1 est sélectionné dans la zone
Version du protocole.
- Renvoi activé
- Indique si un message peut être renvoyé. Cochez cette case pour permettre à un
message d'être à nouveau envoyé.
- Personnalisez les liaisons du fournisseur de transport HTTP.
- Accédez aux liaisons du fournisseur de transport HTTP. Dans la console d'administration, cliquez sur .
La
fenêtre Transport HTTP (liaisons) présente les options de configuration des liaisons
du transport HTTP.
- Spécifiez les propriétés du proxy pour les réponses de service
asynchrones sortantes.
Les zones suivantes déterminent les spécifications pour les réponses de service asynchrone sortant :
- Hôte
- Indique le nom d'hôte du proxy de réponses de service asynchrones
sortantes.
- port
- Indique le numéro de port du proxy de réponses de service asynchrones
sortantes. Vous pouvez entrer ou modifier le numéro de port.
- Nom d'utilisateur
- Indique le nom d'utilisateur du proxy de réponses de service
asynchrones sortantes.
- Mot de passe
- Affiche un paramètre fictif pour le mot de passe du proxy de
réponses de service asynchrones sortantes. Vous pouvez entrer ou modifier le mot de passe. Le mot de passe en cours est masqué.
- Confirmation du mot de passe
- Affiche un paramètre fictif pour le mot de passe du proxy de
réponses de service asynchrones sortantes qui doit correspondre à celui dans la zone
Mot de passe.
Le mot de passe en cours est masqué.
- Spécifiez les propriétés de l'authentification de base pour les réponses asynchrones sortantes.
Les zones suivantes déterminent les spécifications d'authentification pour les réponses asynchrones sortantes :
- Nom d'utilisateur
- Indique le nom d'utilisateur pour l'authentification de base des
réponses asynchrones sortantes.
- Mot de passe
- Affiche un paramètre fictif pour le mot de passe pour l'authentification
de base des réponses asynchrones sortantes. Le mot de passe en cours est masqué.
- Confirmation du mot de passe
- Affiche un paramètre fictif pour le mot de passe pour l'authentification
de base des réponses asynchrones sortantes qui doit correspondre à celui
dans la zone Mot de passe.
Le mot de passe en cours est masqué.
- Personnalisez les liaisons du client de transport HTTP.
- Accédez aux liaisons du client de transport HTTP. Dans la console d'administration, cliquez sur .
La
fenêtre Transport HTTP (liaisons) présente les options de configuration des liaisons
du transport HTTP.
- Spécifiez les propriétés du proxy pour les demandes de service sortantes. Les zones suivantes déterminent les spécifications du proxy pour des requêtes sur le service sortant :
- Hôte
- Indique le nom d'hôte du proxy de demandes de service sortantes.
- port
- Indique le numéro de port du proxy de demandes de service sortantes.
- Nom d'utilisateur
- Indique le nom d'utilisateur du proxy de demandes de service
sortantes.
- Mot de passe
- Affiche un paramètre fictif pour le mot de passe du proxy de demandes
de service sortantes. Le mot de passe en cours est masqué.
- Confirmation du mot de passe
- Affiche un paramètre fictif pour le mot de passe du proxy de
demandes de service sortantes qui doit correspondre à celui dans la zone Mot de
passe.
Le mot de passe en cours est masqué.
- Spécifiez les propriétés de l'authentification de base pour les demandes de service sortantes. Les zones suivantes déterminent les spécifications d'authentification pour les requêtes de service sortant :
- Nom d'utilisateur
- Indique le nom d'utilisateur pour l'authentification de base des demandes
de service sortantes.
- Mot de passe
- Affiche un paramètre fictif pour le mot de passe pour l'authentification
de base des demandes de service sortantes. Le mot de passe en cours est masqué.
- Confirmation du mot de passe
- Affiche un paramètre fictif pour le mot de passe pour l'authentification
de base des demandes de service sortantes qui doit correspondre à celui dans la
zone Mot de passe .
Le mot de passe en cours est masqué.
Résultats
Une fois la règle du transport HTTP personnalisée, l'ensemble de règles lié l'utilise pour protéger la transmission de messages.
Exemple
Vous pouvez associer des ensembles de règles à une application, ses services, ses noeuds finaux ou ses opérations. Dans cet exemple de scénario, supposons que vous disposez de deux clients de service JAX-WS différents pour votre application, mais que vous souhaitez utiliser des valeurs de propriétés de transport HTTP différentes pour chaque client de service. Et plus particulièrement, vous souhaitez configurer une valeur de délai d'expiration de lecture ou d'écriture différent pour chaque client de service. Pour modifier les valeurs de délai d'expiration HTTP, vous pouvez éditer les valeurs de la règle de transport HTTP contenue dans l'ensemble de règles lié à votre application ou dans le cas présent, votre client de service. Cette modification affecte toutes les applications auxquelles l'ensemble de règles contenant la règle de transport HTTP personnalisée est associé.
Cet exemple décrit les étapes pour la configuration des différentes valeurs de délai d'expiration de lecture, d'écriture et de connexion pour des clients de service déployés sur le même serveur d'applications. Cet exemple émet les hypothèses suivantes :
- Deux clients de service JAX-WS, ServiceClient1 et ServiceClient2, sont déployés sur le serveur d'applications.
- La règle de transport HTTP n'a pas été associée au préalable à ces applications.
- Créez deux ensembles de règles et ajoutez leur la règle de transport HTTP. Par exemple : HTTPServiceClient1Policy et HTTPServiceClient2Policy
- Cliquez sur .
- Entrez le nom du nouvel ensemble de règles de l'application, HTTPServiceClient1Policy.
- Dans la collection Règles, cliquez sur .
- Cliquez sur et pour sauvegarder vos modifications apportées à la configuration principale.
- Répétez ces étapes pour créer HTTPServiceClient2Policy.
- Personnalisez les paramètres de la règle de transport HTTP pour les ensembles de règles HTTPServiceClient1Policy et HTTPServiceClient2Policy nouvellement créés.
Par exemple, personnalisez les valeurs de délai d'expiration de lecture et d'écriture pour la règle de transport HTTP contenue dans l'ensemble de règles HTTPServiceClient1Policy et la valeur du délai d'expiration de connexion pour la règle de transport HTTP contenu dans l'ensemble de règles HTTPServiceClient2Policy.
- Cliquez sur HTTPServiceClient1Policy .
- A partir de la collection Règles, cliquez sur .
- Dans le panneau de configuration des règles de transport HTTP, définissez les valeurs de délai d'expiration de lecture, d'écriture et de connexion HTTP à 500 secondes.
- Cliquez sur et pour sauvegarder vos modifications apportées à la configuration principale.
- Cliquez sur HTTPServiceClient2Policy .
- A partir de la collection Règles, cliquez sur .
- Dans le panneau de configuration des règles de transport HTTP, définissez la valeur du délai d'expiration de connexion HTTP à 360 secondes.
- Cliquez sur et pour sauvegarder vos modifications apportées à la configuration principale.
- Associez la règle de transport HTTP personnalisée, HTTPServiceClient1Policy, à votre application, ServiceClient1. DE même, associez la règle de transport HTTP personnalisée, HTTPServiceClient2Policy, à ServiceClient2.
- Cliquez sur ServiceClient1.
- A partir de la collection d'associations d'ensemble de règles, sélectionnez le service, ServiceClient1.
- Cliquez sur , puis sur HTTPServiceClient1Policy.
- Cliquez sur pour sauvegarder les modifications de la configuration principale.
- Cliquez sur ServiceClient2.
- A partir de la collection d'associations d'ensemble de règles, sélectionnez le service ServiceClient2.
- Cliquez sur , puis sur HTTPServiceClient2Policy.
- Cliquez sur pour sauvegarder les modifications de la configuration principale.
Il en résulte que HTTPServiceClient1Policy est désormais associé à l'application ServiceClient1 et que les sessions HTTP utilisent une valeur de délai d'expiration de lecture et d'écriture égale à 500 secondes. HTTPServiceClient2Policy est associé à l'application ServiceClient2 et les sessions HTTP utilisent une valeur de délai d'expiration de connexion égale à 360
secondes.
Que faire ensuite
Vous pouvez personnaliser des règles afin de garantir la sécurité
des messages en configurant la règle du transport SSL.