Protection par mot de passe d'une opération de service Web

Protégez par mot de passe des opérations individuelles (méthodes) dans un service Web en créant un bean enterprise avec des méthodes correspondant aux opérations de service Web puis en appliquant des mécanismes d'authentification WebSphere Application Server au bean enterprise pour qu'un appel à la méthode EJB soit effectué pour l'autorisation avant l'appel d'une opération de service Web.

Avant de commencer

Vous devez non seulement protéger par mot de passe une opération de service Web, comme décrit dans cette rubrique, mais également configurer le service comme service entrant ou sortant et sélectionner l'option pour activer la sécurité au niveau des opérations comme décrit dans Modification d'une configuration de service entrant existante ou dans Modification d'une configuration de service sortantes existant..

Pour qu'une application déployée sur le bus d'intégration de services utilise la sécurité au niveau des opérations, vous devez définir la règle du chargeur de classes du serveur d'applications sur "single", comme décrit dans la section de Configuration des chargeurs de classe d'un serveur.

Pourquoi et quand exécuter cette tâche

Pour l'autorisation au niveau opération, créez un bean enterprise avec des méthodes correspondant aux opérations de service Web. Ces méthodes d'EJB n'effectuent aucune opération ; elles sont là pour appliquer la sécurité. Vous appliquez ensuite des mécanismes d'authentification existants de WebSphere Application Server au bean enterprise. Avant tout appel d'une opération de service Web, la méthode de l'EJB est appelée. Si l'autorisation est accordée, le service Web est appelé.

Votre service Web cible est protégé en encapsulant un fichier EAR (votre_serviceweb.ear), puis en appliquant une autorisation à base de rôle au fichier EAR. Cette procédure est expliquée dans des termes généraux dans Sécurité au niveau des opérations : Autorisation basée sur des rôles. Le fichier votre_serviceweb.ear est ensuite importé dans le fichier sibwsauthbean.ear et le fichier sibwsauthbean.ear est modifié pour définir les rôles et les affecter à des méthodes. Le fichier sibwsauthbean.ear modifié est ensuite déployé dans WebSphere Application Server, et les utilisateurs sont attribués aux rôles définis auparavant.

La version de l'installation du fichier sibwsauthbean.ear se trouve dans le répertoire racine_serveur_app/installableApps, où racine_serveur_app correspond au répertoire principal d'installation de WebSphere Application Server.

Le fichier sibwsauthbean.ear contient un fichier EAR pour chaque service Web que vous protégez. Pour le premier service Web que vous protégez via l'autorisation au niveau opération, copiez la version d'installation du fichier sibwsauthbean.ear et stockez la copie en dehors du système de fichiers du serveur d'applications. Pour chaque service Web suivant que vous protégez, modifiez la même copie du fichier sibwsauthbean.ear.

[z/OS]Pour activer l'autorisation au niveau opération, utilisez la commande sibwsAuthGen et un outil d'assemblage. Vous ne pouvez utiliser ces outils que sur un système Windows. Par conséquent, vous devez copier (en binaire) sur un système Windows tous les fichiers nécessaires pour cette tâche, créer et modifier les fichiers EAR sur ce système Windows, puis recopier (en binaire) le fichier sibwsauthbean.ear modifié sur votre système z/OS.

Pour protéger par mot de passe les opérations de service Web, suivez la procédure ci-après pour chaque service Web à protéger :

Procédure

  1. [IBM i][AIX Solaris HP-UX Linux Windows]Pour le premier service Web que vous protégez, créez une copie du fichier racine_serveur_app/installableApps/SIBWSauthbean.ear dans un emplacement approprié en dehors du système de fichiers du serveur d'applications.
  2. [z/OS]Pour le premier service Web que vous protégez, procédez comme suit :
    1. Faites une copie du fichier racine_serveur_app/installableApps/SIBWSauthbean.ear à un emplacement pratique, en dehors du système de fichiers du serveur d'applications.
    2. Sur votre système Windows, installez l'outil d'assemblage.
    3. Sur votre système Windows, créez un répertoire avec le nom de votre choix (par exemple, /votre_rép), puis définissez dans ce répertoire un sous-répertoire appelé lib.
    4. Utilisez le protocole FTP (File Transport Protocol) pour copier (en binaire) les fichiers suivants de votre serveur d'applications cible sous z/OS vers votre système Windows :
      Copiez les fichiers suivants dans votre nouveau répertoire (par exemple, /votre_rép) :
      • racine_app_serveur/util/SIBWSAuthGen.bat
      Copiez les fichiers suivants dans votre nouveau sous-répertoire lib (par exemple, /votre_rép/lib) :
      • racine_serveur_app/lib/commons-logging-api.jar
      • racine_serveur_app/lib/qname.jar
      • racine_serveur_app/lib/wsdl4j.jar
      • racine_serveur_app/lib/wsif.jar
      • racine_serveur_app/lib/xerces.jar
  3. [z/OS]Créez (au format binaire), à l'aide du protocole FTP (File Transport Protocol), votre propre copie du fichier sibwsauthbean.ear de votre système z/OS dans votre répertoire (par exemple, /votre_rép), sur votre système Windows.
  4. Pour créer le fichier votre_serviceweb.ear, procédez comme suit :
    1. [IBM i][AIX Solaris HP-UX Linux Windows]Ouvrez une fenêtre d'invite de commande.
    2. [IBM i][AIX Solaris HP-UX Linux Windows]Accédez au répertoire racine_serveur_app/util.
    3. [z/OS]Ouvrez une invite de commande sur le système Windows.
    4. [z/OS]Accédez à votre répertoire (par exemple, votre_rép).
    5. [z/OS]Entrez l'une des commandes suivantes pour définir la variable d'environnement WAS_HOME de sorte qu'elle fasse référence à votre nouveau répertoire :
      set WAS_HOME=chemin_vers_nouveau_répertoire
      ou
      set WAS_HOME=.
      chemin_vers_nouveau_répertoire correspond au chemin complet de votre nouveau répertoire.
    6. [z/OS]Définissez le chemin d'accès pour qu'il désigne la machine virtuelle Java fournie avec l'outil d'assemblage.
    7. [z/OS]Entrez la commande suivante pour mettre à jour le chemin d'accès aux classes :
      set classpath=lib\commons-logging-api.jar;lib\j2ee.jar;lib\qname.jar;lib\wsdl4j.jar;lib\wsif.jar;lib\xerces.jar;
    8. Entrez la commande suivante :
      sibwsAuthGen emplacement nom_votre_serviceweb
      • emplacement correspond à l'emplacement WSDL du service. Pour un service sortant, vous devez disposer du fichier WSDL cible qui se trouve à l'adresse Web externe. Pour un service de communications entrantes, vous devez disposer du modèle de fichier WSDL qui se trouve sur le module d'écoute de noeud final du service.
      • nom_votre_serviceweb correspond au nom du service que vous sécurisez, comme défini dans la zone d'emplacement du fichier WSDL. La casse doit être respectée.
      Remarque : Pour obtenir des informations détaillées sur l'emplacement d'un fichier WSDL de service entrant donné, publiez le fichier WSDL dans un fichier compressé comme décrit dans Modification d'une configuration de service entrant existante, puis recherchez l'emplacement dans le fichier WSDL exporté. Vous pouvez également extraire le fichier WSDL du service entrant en utilisant la demande de service Web standard suivante :
      http://nom_hôte:numéro_port/racine_contexte_epl/soaphttpengine/nom_bus_/nom_service_entrant/nom_port_entrant?wsdl
      nom_hôte et numéro_port correspondent respectivement au nom d'hôte et au numéro de port de ce serveur d'applications, et racine_contexte_epl correspond à la racine du contexte de l'application de module d'écoute de noeud final, comme décrit dans Modification d'une configuration de module d'écoute de noeud final existante.

      Exemples d'utilisation de la commande sibwsAuthGen :

      (service sortant) :
      sibwsAuthGen http://www.somecompany.com/service_cible/wsdl/service_cible.wsdl nom_Service_cible
      (service entrant) :
      sibwsAuthGen http://nom.votre.serveur:9080/wsgwsoaphttp1/soaphttpengine/votre_bus/votre_service/inboundport1?wsdl nom_votre_service
    Le fichier votre_serviceweb.ear est créé dans le répertoire actuel. Il existe également un répertoire temporaire (répertoire_actuel/ejb) que vous pouvez supprimer.
  5. Pour terminer l'affectation des rôles et la protection des méthodes, effectuez les étapes de la rubrique Utilisation des outils d'assemblage pour protéger par mot de passe une opération de service Web
  6. Pour installer la copie modifiée du fichier sibwsauthbean.ear, procédez comme suit :
    1. [IBM i][AIX Solaris HP-UX Linux Windows]Vérifiez que le fichier sibwsauthbean.ear modifié est stocké dans l'emplacement approprié en dehors du système de fichiers du serveur d'applications que vous avez choisi à l'étape 1. Conservez le fichier sibwsauthbean.ear dans cet emplacement pour une réutilisation ultérieure et de nouvelles modifications.
    2. [z/OS]Utilisez FTP pour recopier (en binaire) le fichier sibwsauthbean.ear modifié dans l'emplacement approprié de votre système z/OS que vous avez choisi à l'étape 1. Conservez le fichier sibwsauthbean.ear modifié dans cet emplacement pour une réutilisation ultérieure et de nouvelles modifications.
    3. Lancez la console d'administration WebSphere Application Server.
    4. Dans le panneau de navigation, cliquez sur Applications. -> Nouvelle application
    5. Utilisez l'option Nouvelle application d'entreprise pour installer la copie modifiée du fichier sibwsauthbean.ear. Sélectionnez les utilisateurs ou les groupes à affecter aux rôles lorsque vous y êtes invité.

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