Délégations
La délégation correspond à la transmission de l'identité de sécurité d'un processus entre un appelant et un objet appelé. Selon la spécification Java™ EE (Java Platform, Enterprise Edition), un servlet et des beans enterprise peuvent transmettre l'identité du client ou de l'utilisateur éloigné lors de l'appel de beans enterprise, ou utiliser une autre identité indiquée dans le descripteur de déploiement correspondant.
- Délégation (RunAs) de l'identité client
- Délégation (RunAs) de l'identité spécifiée
- Délégation (RunAs) de l'identité système



La spécification EJB prend en charge uniquement la délégation (RunAs) au niveau des EJB (Enterprise JavaBeans). Toutefois, une extension permet d'appliquer la spécification RunAs au niveau de la méthode EJB. Avec une niveau méthode EJB, la spécification RunAs peut définir un rôle RunAs différent pour plusieurs méthodes au sein des mêmes beans enterprise.
La spécification RunAs est détaillée dans le descripteur de déploiement, qui correspond au fichier ejb-jar.xml dans le module EJB et web.xml dans le module Web. L'extension de la spécification RunAs est incluse dans le fichier ibm-ejb-jar-ext.xml.
Un fichier de liaison spécifique à IBM est également disponible pour chaque application. Il contient un mappage entre le rôle RunAs et l'utilisateur. Ce fichier est désigné dans le fichier ibm-application-bnd.xml.

Processus de délégation
- Table de mappage des ressources vers les rôles RunAs
- Table de mappage du rôle RunAs vers l'ID utilisateur et le mot de passe
Utilisez la table de mappage des ressources vers les rôles RunAs afin d'extraire le rôle utilisé par le servlet ou par les beans enterprise pour transmettre les données à l'appel du bean enterprise suivant.
Utilisez la table de mappage du rôle RunAs vers l'ID utilisateur et le mot de passe pour extraire l'ID utilisateur associé au rôle RunAs et le mot de passe associé.
La délégation a lieu après l'authentification et l'autorisation. Lors de ce processus, le module de délégation consulte la table de mappage des ressources vers le rôle RunAs pour extraire le rôle RunAs (3). Le module de délégation consulte la table de mappage du rôle RunAs vers l'ID utilisateur et le mot de passe pour extraire l'utilisateur appartenant au rôle RunAs(4). L'ID utilisateur et le mot de passe permettent de créer des justificatifs à l'aide du module d'authentification, qui n'est pas illustré dans la figure.
Le justificatif ainsi généré est stocké dans l'ORB Current en tant que justificatif d'appel (5). Lors de
l'appel d'autres beans enterprise, le servlet et les beans enterprise extraient les
justificatifs d'appel à partir de l'ORB Current (6) et appellent les beans enterprise
suivants (7).