Activation du cache distribué et de l'affinité de session lors de l'utilisation de Secure Conversation

WebSphere Application Server fournit un mécanisme de protection au niveau du message dans un environnement de cluster. Vous pouvez utiliser WS-SecureConversation (Web Services Secure Conversation) pour la protection au niveau des messages des services Web JAX-WS (Java™ API for XML Web Services 2.0) dans un environnement de cluster.

Avant de commencer

Une demande de services Web protégée à l'aide d'un jeton SCT (Security Context Token) est dirigée vers un serveur dans un cluster mais ce jeton SCT peut avoir été émis ou renouvelé par un autre serveur du cluster. Il se peut que le serveur traitant la demande n'ait pas accès au SCT si la mémoire cache répartie de WebSphere Application Server n'est pas configurée pour répondre ou ne fournit pas de réponse assez vite. Les opérations décrites dans cette rubrique ne doivent être exécutées que si le paramètre de réplication pour les membres de cluster est défini comme mise à jour asynchrone pour le cache réparti de sécurité des services Web.

Pour plus d'informations sur les paramètres de mise à jour du cache, reportez-vous à la rubrique Activation du cache distribué à l'aide de la mise à jour synchrone et de la récupération des jetons. Vous pouvez également activer le cache réparti de sécurité des Services Web avec le paramètre par défaut, qui permet la mise à jour synchrone des membres de cluster.

Pourquoi et quand exécuter cette tâche

Effectuez les étapes de niveau élevé suivantes pour activer le cache distribué et l'affinité de session à l'aide de la conversation sécurisée pour la protection au niveau des messages dans un environnement de cluster.

Procédure

  1. Activez le cache distribué pour le jeton de contexte de sécurité.
    1. Dans la console d'administration de WebSphere Application Server, cliquez sur Services > Mémoire cache de sécurité.
    2. Cochez la case Activer la mise en cache répartie.
    3. Cliquez sur le bouton radio pour sélectionner Mise à jour asynchrone des membres de cluster.
    4. Cliquez sur Appliquer, puis sur Sauvegarder pour enregistrer la configuration.
  2. Créez un domaine de réplication. Effectuez les opérations suivantes :
    1. Dans la console d'administration, cliquez sur Environnement > Domaines de réplication > Nouveau.
    2. Entrez un nom. Par exemple, ABCDomain.
    3. Sous Nombre de répliques, sélectionnez l'option Domaine entier.
    4. Cliquez sur OK, puis sur Sauvegarder pour enregistrer la configuration.
  3. Activez le cache dynamique. Effectuez les tâches suivantes pour chaque serveur du cluster :
    1. Dans la console d'administration, cliquez sur Serveurs > Types de serveurs > Serveurs d'applications WebSphere > nom_serveur > Services du conteneur > Service de cache dynamique.
    2. Sélectionnez l'option Activer la réplication de la mémoire cache.
    3. Sélectionnez le nom de domaine de réplication créé. Par exemple, ABCDomain.
    4. Pour le type de réplication, sélectionnez Push et Pull.
    5. Cliquez sur OK, puis sur Sauvegarder pour enregistrer la configuration.
  4. Facultatif : Modifiez l'intervalle de mise à jour par lots du cache distribué. Par défaut, l'intervalle de mise à jour par lots du cache distribué est 1000 millisecondes. Vous pouvez cependant lui affecter une valeur inférieure à 1000 millisecondes. Pour modifier cette valeur, suivez les étapes ci-dessous pour chaque serveur du cluster :
    1. Dans la console d'administration, cliquez sur Serveurs > Types de serveurs > Serveurs d'applications WebSphere > nom_serveur > Gestion des processus et Java > Définition des processus > Machine virtuelle Java > Propriétés personnalisées > Nouveau.
    2. Entrez le nom de la propriété com.ibm.ws.cache.CacheConfig.batchUpdateInterval.
    3. Entrez la valeur de la propriété.
    4. Cliquez sur OK, puis sur Sauvegarder pour enregistrer la configuration.
  5. Installez et configurez un serveur web ou un serveur proxy qui prend en charge l'affinité de session. IBM® HTTP Server et un serveur proxy WebSphere Application Server prennent en charge une affinité de session. Dans le centre de documentation WebSphere Application Server, reportez-vous à la rubrique "Communication avec les serveurs Web". pour plus d'informations que l'installation et la configuration d'IBM HTTP Server.
  6. Configurez les systèmes client afin qu'ils envoient des demandes de services web à l'hôte et au port sur lesquels le serveur ou le serveur proxy est en cours d'exécution. Le serveur Web ou le serveur proxy achemine ensuite les demandes au membre de cluster approprié.
  7. Sur les services qui reçoivent les demandes de service Web protégées par l'utilisation de Web Services Secure Conversation, sélectionnez l'option de règle activée pour session de transport HTTP. Effectuez la configuration de l'ensemble de règles en suivant la procédure ci-après.
    1. Ajoutez la règle de transport HTTP à l'ensemble de règles utilisé par les services.
    2. Dans le panneau de configuration de la règle de transport HTTP, sélectionnez Session activée.
    3. Cliquez sur OK, puis sur Sauvegarder pour enregistrer la configuration.
  8. Sur les systèmes client qui envoient les demandes des services Web et qui sont protégés par Secure Conversation, activez la propriété de session de gestion des transports HTTP. Effectuez la configuration de l'ensemble de règles ou définissez la propriété par programmation. Si vous utilisez un ensemble de règles avec votre configuration, procédez comme suit :
    1. Ajoutez la règle de transport HTTP à l'ensemble de règles utilisé par les clients.
    2. Dans le panneau de configuration des règles de transport HTTP, sélectionnez l'option Session activée.
    3. Cliquez sur OK, puis sur Sauvegarder pour enregistrer la configuration.

Résultats

Une fois les configurations effectuées, vous avez activé le cache distribué et l'affinité de session lors de l'utilisation de la conversation sécurisée dans un environnement de cluster. Si le serveur traitant la demande n'a pas accès au jeton SCT, la demande n'aboutit pas et l'erreur Jeton SCT de type null ou jeton SCT non valide.

Exemple

L'exemple suivant, qui est un fragment de code, présente comment définir par programmation la propriété Maintain sur l'objet JAX-WS correct :

Map<String> rc = ((BindingProvider) port).getRequestContext();
...
rc.put(BindingProvider.SESSION_MAINTAIN_PROPERTY, Boolean.TRUE);
... </String>

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_enablesecconvcluster
Nom du fichier : twbs_enablesecconvcluster.html