Définition d'une règle de sécurité de MBean explicite

Vous pouvez définir de manière explicite une règle de sécurité pour un MBean spécifique. Utilisez l'exemple ci-dessous pour définir ce type de règle de sécurité.

Avant de commencer

Cette tâche suppose une connaissance de base de la programmation MBean. Pour plus d'informations sur la programmation MBean, voir la documentation sur l'API (Application Programming Interface) Java™ MBean. Dans le centre de documentation, cliquez sur Référence > Interface Mbean.

Pourquoi et quand exécuter cette tâche

Pour définir une règle de sécurité explicite, effectuez les opérations ci-dessous.

Procédure

  1. Supposons que vous possédiez un MBean défini par le fichier de descripteursample.xml.
  2. Définissez la règle de sécurité explicite de ce bean dans le fichiersampleSecurity.xml. La convention de dénomination requiert l'ajout de la chaîne "Security" au nom du fichier de descripteur pour obtenir le nom du fichier de descripteur de sécurité du MBean.
  3. Placez le fichier de descripteur de la règle de sécurité dans le même répertoire que le fichier de descripteur de la sécurité du MBean afin que le programme de chargement du MBean puisse le trouver. Ce répertoire est l'emplacement généralement utilisé pour le fichier de descripteur de la règle de sécurité. S'il n'existe pas de fichier de descripteur de la sécurité du MBean, la règle de sécurité du MBean par défaut est utilisée.
  4. Indiquez le nom du MBean sample dans la zone resource-name de l'élément de ressource dans le fichier sampleSecurity.xml afin que le programme de chargement des règles de sécurité du MBean puisse associer les règles de sécurité au MBean. La définition du descripteur de la sécurité du MBean est comparable à la règle de sécurité définie par le descripteur de déploiement J2EE (Java 2 Platform, Enterprise Edition).

Résultats

Vous disposez désormais d'une règle de sécurité définie qui peut s'exécuter avec un MBean.

Exemple

L'exemple suivant décrit le format du fichier de descripteur de la sécurité du MBean pour le fichier sampleSecurity.xml.

La ligne 2 indique qu'un schéma de descripteur de la sécurité du MBean est défini par le fichier RolePermissionDescriptor.dtd, qui est une définition DTD (document type definition) dans WebSphere Application Server.

Comme indiqué à la ligne 3, chaque fichier de descripteur du MBean contient un élément role-permission unique. La hiérarchie des rôles d'administration de la sécurité est définie dans les éléments security-role entre les lignes 9 et 37. Le rôle d'administration de la sécurité possède une relation d'héritage.

Comme indiqué de la ligne 14 à la ligne 21, le rôle de sécurité opérateur implique le rôle de sécurité moniteur, c'est-à-dire que le rôle opérateur possède tous les droits du rôle moniteur. Comme indiqué à la ligne 30 et 38, le rôle de sécurité administrateur inclus à la fois les rôles de sécurité configurateur et opérateur. Chaque fichier de descripteur de la sécurité du MBean possède généralement la même définition de relation de rôle afin que vous puissiez copier et coller cette section dans le fichier du descripteur de sécurité du MBean.

Un ou plusieurs éléments method-permission sont définis après l'élément security-role. Chaque élément method-permission définit les rôles requis d'une ou de plusieurs méthodes. Si plusieurs méthodes possèdent des noms identiques, indiquez des paramètres de méthode afin d'éviter les conflits entre ces noms.

1. <?xml version="1.0" encoding="UTF-8"?>
2. <!DOCTYPE role-permission SYSTEM "RolePermissionDescriptor.dtd" >
3. <role-permission>
4.    <resource>
5.       <resource-name>sample</resource-name>
6.       <class-name>com.ibm.ws.security.descriptor.sample</class-name>
7.       <description>This is a sample for testing role permission descriptor.</description>
8.    </resource>
9.    <security-role>
10.      <role>
11.         <role-name>monitor</role-name>
12.      </role>
13.   </security-role>
14.   <security-role>
15.      <role>
16.         <role-name>operator</role-name>
17.         <imply>
18.            <role-name>monitor</role-name>
19.         </imply>
20.      </role>
21.   </security-role>
22.   <security-role>
23.      <role>
24.         <role-name>configurator</role-name>
25.         <imply>
26.            <role-name>monitor</role-name>
27.         </imply>
28.      /role>
29.   </security-role>
30.   <security-role>
31.      <role>
32.         <role-name>administrator</role-name>
33.         <imply>
34.            <role-name>operator</role-name>
35.            <role-name>configurator</role-name>
36.         </imply>
37.      </role>
38.   </security-role>
39.   <method-permission>
40.      <description>Sample method permission table</description>
41.      <role-name>operator</role-name>
42.      <method>
43.         <description>Sample operation</description>
44.         <resource-name>sample</resource-name>
45.         <method-name>stop</method-name>
46.      </method>
47.   </method-permission>
48.   <method-permission>
49.      <description>Sample method permission table</description>
50.      <role-name>operator</role-name>
51.      <method>
52.         <description>Sample operation</description>
53.         <resource-name>sample</resource-name>
54.         <method-name>start</method-name>
55.         <method-params>
56.            <method-param>java.lang.String</method-param>
57.            <method-param>java.lang.String</method-param>
58.         </method-params>
59.      </method>
60.   </method-permission>
61.   <method-permission>
62.      <description>Sample method permission table</description>
63.      <role-name>operator</role-name>
64.      <method>
65.         <description>Sample operation</description>
66.         <resource-name>sample</resource-name>
67.         <method-name>monitor</method-name>
68.         <method-params>
69.         </method-params>
70.      </method>
71.   </method-permission>
72.   <method-permission>
73.      <description>Sample method permission table</description>
74.      <role-name>configurator</role-name>
75.      <method>
76.         <description>Sample operation</description>
77.         <resource-name>sample</resource-name>
78.         <method-name>setValue</method-name>
79.         <method-params>
80.            <method-param>java.lang.Boolean</method-param>
81.         </method-params>
82.      </method>
83.   </method-permission>
84.   <method-permission>
85.      <description>Sample method permission table</description>
86.      <role-name>monitor</role-name>
87.      <method>
88.         <description>Sample operation</description>
89.         <resource-name>sample</resource-name>
90.         <method-name>getValue</method-name>
91.      </method>
92.   </method-permission>
93. </role-permission>

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