10.2.2. Références de sécurité

Les EJB (Enterprise Java Beans) et les servlets peuvent déclarer un ou plusieurs éléments <security-role-ref>.
Illustration of Security Roles Reference Model

Figure 10.1. Modèle de référence de rôles de sécurité

Cet élément déclare que le composant utilise la valeur de l'attribut role-nameType de l'élément <role-name> comme argument de la méthode isCallerInRole(String). En utilisant la méthode isCallerInRole, un composant est en mesure de vérifier si l'invocateur est dans un rôle qui a été déclaré avec un élément <security-role-ref> ou <role-name>. La valeur de l'élément <role-name> doit être reliée à un élément <security-role> par l'élément <role-link>. L'utilisation typique de isCallerInRole est de procéder à un contrôle de sécurité qui ne puisse pas être défini en utilisant les éléments <method-permissions> basé-rôle.

Exemple 10.1. fragment de descripteur ejb-jar.xml

  
  <!-- A sample ejb-jar.xml fragment -->
    <ejb-jar>
      <enterprise-beans>
        <session>
          <ejb-name>ASessionBean</ejb-name>
          ...
          <security-role-ref>
            <role-name>TheRoleICheck<role-name>
              <role-link>TheApplicationRole</role-link>
          </security-role-ref>
        </session>
      </enterprise-beans>
    ...
    </ejb-jar>

Note

Il s'agit d'un exemple uniquement. Dans les déploiements, les éléments de cette section doivent contenir les noms de rôle pertinents au déploiement EJB.

Exemple 10.2. fragment de descripteur web.xml


<web-app>
  <servlet>
    <servlet-name>AServlet</servlet-name>
    ...
    <security-role-ref>
      <role-name>TheServletRole</role-name>
      <role-link>TheApplicationRole</role-link>
    </security-role-ref>
  </servlet>
    ...
</web-app>