Sécurisation des applications de bean enterprise

Vous pouvez protéger les méthodes de bean enterprise en leur affectant des rôles de sécurité. Avant d'affecter des rôles de sécurité, vous devez déterminer les méthodes d'EJB (Enterprise JavaBeans) qui doivent être protégées, ainsi que la façon de les protéger.

Pourquoi et quand exécuter cette tâche

Vous pouvez affecter un ensemble de méthodes d'EJB à un ensemble de rôles. Lorsqu'une méthode d'EJB est sécurisée en associant un ensemble de rôles, accordez au moins un rôle de cet ensemble pour que vous puissiez accéder à cette méthode. Pour empêcher l'accès à un ensemble de méthodes d'EJB, marquez-le comme exclu. Vous pouvez autoriser à un utilisateur l'accès à un ensemble de méthodes de bean enterprise en désélectionnant ces méthodes. Vous pouvez exécuter des beans enterprise sous une identité différente, à l'aide de l'identité runAs, avant d'appeler d'autres beans enterprise.

Remarque : Cette procédure peut ne pas correspondre aux étapes requises lors de l'utilisation de votre outil d'assemblage, ou à la version de l'outil d'assemblage que vous utilisez. Nous vous conseillons de suivre les instructions destinées à l'outil et à la version que vous utilisez. Pour plus d'informations sur l'utilisation des outils d'assemblage, voir les informations correspondantes.

Pour sécuriser les applications de bean enterprise, procédez comme suit :

Procédure

  1. Dans un outil d'assemblage, importez votre fichier JAR (Java™ Archive) d'EJB (Enterprise JavaBeans) ou un fichier EAR contenant un ou plusieurs modules Web.

    Consultez les informations relatives à l'importation d'un fichier JAR EJB ou d'un fichier EAR d'une application d'entreprise dans la documentation relative à Rational Application Developer.

  2. Dans l'explorateur de projets, cliquez sur le répertoire Projets d'EJB, puis sur le nom de l'application.
  3. Avec le bouton droit de la souris, cliquez sur le descripteur de déploiement et sélectionnez Ouvrir avec > Editeur de descripteur de déploiement. Si vous avez sélectionné un fichier .jar de bean enterprise, un éditeur de descripteur de déploiement d'EJB s'affiche. Si vous sélectionnez un fichier.ear d'application, un éditeur de descripteur de déploiement d'application s'affiche. Pour accéder à l'aide en ligne de l'éditeur, appuyez sur la touche F1 et cliquez sur le nom de l'éditeur.
  4. Créez les rôles de sécurité. Vous pouvez créer des rôles de sécurité au niveau de l'application ou du module EJB. Si un rôle de sécurité est créé au niveau du module EJB, le rôle s'affiche également au niveau de l'application. Si un rôle de sécurité est créé au niveau de l'application, le rôle ne s'affiche pas dans tous les modules EJB. Vous pouvez copier et coller un ou plusieurs rôles de sécurité du module EJB que vous créez au niveau de l'application :
    • Créez un rôle au niveau d'un module EJB. Dans un éditeur de descripteur de déploiement d'EJB, cliquez sur l'onglet Assemblage. Dans Rôles de sécurité, cliquez sur Ajouter. Dans l'assistant d'ajout de rôles de sécurité, indiquez le nom et la description du rôle de sécurité et cliquez sur Fin.
    • Créez un rôle au niveau de l'application. Dans un éditeur de déploiement d'application, sélectionnez l'onglet Sécurité. Sous la liste des rôles de sécurité, cliquez sur Ajouter. Dans l'assistant d'ajout de rôles de sécurité, indiquez le nom et la description du rôle de sécurité et cliquez ensuite sur Fin.
  5. Créez les droits d'accès aux méthodes. Les droits d'accès aux méthodes mappent une ou plusieurs méthodes vers un ensemble de rôles. Un bean enterprise dispose de quatre types de méthodes : des méthodes home, des méthodes remote, des méthodes LocalHome et des méthodes local. Vous pouvez ajouter des droits d'accès aux beans enterprise au niveau de la méthode. Vous ne pouvez ajouter des droits d'accès à une méthode à un bean enterprise que si un ou plusieurs rôles de sécurité ont été définis. Pour les projets EJB de version 2.0, une option non activée indique que le processus d'autorisation n'est pas requis pour exécuter des méthodes sélectionnées à partir des beans choisis. Pour ajouter des droits d'accès à une méthode à un bean enterprise, procédez comme suit :
    1. Dans l'onglet Assemblage d'un éditeur de descripteur de déploiement d'EJB, cliquez sur Ajouter sous Droits d'accès aux méthodes. L'assistant d'ajout de droits d'accès aux méthodes s'affiche.
    2. Sélectionnez un rôle de sécurité dans la liste des rôles trouvés et cliquez sur Suivant.
    3. Sélectionnez un ou plusieurs beans enterprise dans la liste des beans trouvés. Vous pouvez cliquer sur Sélectionner tout ou sur Désélectionner tout pour sélectionner ou désélectionner tous les beans enterprise de la liste. Cliquez sur Next.
    4. Sélectionnez les méthodes que vous souhaitez lier à votre rôle de sécurité. La page Eléments de méthodes répertorie toutes les méthodes associées aux beans enterprise. Vous pouvez cliquer sur Appliquer à tous les événements ou sur Désélectionner tout pour sélectionner ou effacer rapidement plusieurs méthodes. Cette sélection n'affecte que la méthode par défaut (*) de chaque bean. La création de droits d'accès à une méthode pour la signature de méthode exacte remplace le paramètre de droit d'accès à la méthode (*) par défaut. La méthode par défaut (*) représente toutes les méthodes du bean. Il existe également des méthodes par défaut (*) pour chaque interface. Vous pouvez définir d'autres droits d'accès aux méthodes restantes en ne sélectionnant pas toutes les méthodes individuelles dans l'arborescence.
    5. Cliquez sur Terminer.
    Les droits d'accès aux méthodes, une fois créés, apparaissent dans l'arborescence. Développez l'arborescence pour visualiser le bean et les méthodes définis dans les droits d'accès aux méthodes.
  6. Excluez l'accès des utilisateurs aux méthodes. Les utilisateurs ne doivent pas accéder aux méthodes exclues. Les méthodes des beans enterprise qui ne sont pas affectées à un rôle ou qui ne sont pas exclues sont désélectionnées lors de l'installation de l'application par le déployeur.
    1. Dans l'onglet Assemblage d'un éditeur de descripteur de déploiement d'EJB, cliquez sur Ajouter sous Liste d'exclusion. L'assistant de liste d'exclusion s'affiche.
    2. Sélectionnez un ou plusieurs beans enterprise dans la liste des beans trouvés et cliquez sur Suivant.
    3. Sélectionnez un ou plusieurs éléments de méthode pour l'identité de sécurité et cliquez sur Fin.
  7. Mappez security-role-ref et role-name à role-link. Lors du développement des beans enterprise, vous pouvez créer l'élément security-role-ref. Cet élément comporte uniquement la zone role-name. La zone role-name détermine si l'appelant se trouve dans un rôle role(isCallerInRole()) indiqué. Elle contient le nom du rôle référencé dans le code. Comme les rôles de sécurité sont créés lors de la phase d'assemblage, le développeur utilise un nom de rôle logique dans la zone role-name et indique des informations suffisantes dans la zoneDescription pour que l'assembleur puisse mapper le rôle réel (role-link). L'élément security-role-ref se trouve au niveau de l'EJB. Les beans enterprise peuvent posséder plusieurs éléments security-role-ref.
    1. Dans l'onglet Référence d'un éditeur de déploiement d'EJB, sous la liste des références, cliquez sur Ajouter. L'assistant d'ajout de références s'affiche.
    2. Sélectionnez Référence à un rôle de sécurité et cliquez sur Suivant.
    3. Indiquez le nom de la référence au rôle de sécurité, sélectionnez un rôle de sécurité auquel la référence doit être liée, décrivez la référence au rôle de sécurité et cliquez sur Fin.
    4. Mappez chaque role-name utilisé lors du développement au rôle (role-link) en suivant les étapes ci-dessus.
  8. Définissez l'identité RunAs pour les composants de bean entreprise. L'identité RunAs du bean enterprise permet d'appeler les beans entreprise suivants dans la chaîne d'appels des EJB. Lorsque les beans entreprise suivants sont appelés, l'identité RunAsIdentity est transmise aux beans entreprise suivants pour effectuer le contrôle des autorisations sur le prochain bean entreprise. Si l'identité RunAs n'est pas définie, l'identité du client est transmise aux beans entreprise suivants. L'identité RunAs peut représenter chaque bean entreprise ou chaque méthode des beans entreprise.
    1. Dans l'onglet Accès d'un éditeur de descripteur de déploiement d'EJB, cliquez sur Ajouter en regard de la zone Identité de sécurité (niveau bean). L'assistant d'ajout d'identité de sécurité s'affiche.
    2. Sélectionnez le mode d'exécution, décrivez l'identité de sécurité et cliquez sur Suivant. Sélectionnez le mode Utiliser l'identité de l'appelant pour indiquer au service de sécurité de ne pas modifier les paramètres de justificatif du principal. Sélectionnez le mode Utiliser l'identité attribuée à un rôle spécifique afin d'utiliser un principal affecté au rôle de sécurité indiqué pour l'exécution des méthodes du bean. Cette association fait partie de la liaison d'application dans laquelle le rôle est associé à l'ID utilisateur et à un mot de passe d'un utilisateur auquel a été octroyé ce rôle. Si vous avez sélectionné le mode Utiliser l'identité attribuée à un rôle spécifique, vous devez fournir le nom et la description du rôle.
    3. Sélectionnez un ou plusieurs beans enterprise dans la liste des beans trouvés et cliquez sur Suivant. Si Suivant n'est pas disponible, cliquez sur Fin.
    4. Facultatif : Sur la page des Eléments de méthode, sélectionnez un ou plusieurs éléments de méthode pour l'identité de sécurité et cliquez sur Fin.
  9. Fermez l'éditeur du descripteur de déploiement et, à l'invite, cliquez sur Oui pour sauvegarder les modifications.

Résultats

Une fois que vous avez sécurisé une application EJB, le fichier .jar obtenu contient des informations de sécurité dans son descripteur de déploiement. Les informations de sécurité des modules EJB est stocké dans le fichier ejb-jar.xml.

Que faire ensuite

Après avoir utilisé l'outil d'assemblage pour sécuriser une application EJB, vous pouvez installer l'application EJB à l'aide de la console d'administration. Lors de l'installation d'une application EJB sécurisée, suivez la procédure décrite à la rubrique Déploiement d'applications sécurisées pour procéder à la sécurisation de l'application EJB.

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