Extraction du sujet RunAs de l'unité d'exécution pour JAAS
Le sujet RunAs ou sujet de l'appel contient les informations d'authentification de l'utilisateur pour le mode RunAs défini dans le descripteur de déploiement d'application pour cette méthode.
Avant de commencer
Pourquoi et quand exécuter cette tâche
Le sujet RunAs (ou sujet de l'appel) contient les informations d'authentification de l'utilisateur pour le mode RunAs défini dans le descripteur de déploiement d'application pour cette méthode. Ce sujet est signalé comme étant en lecture seule lorsqu'il est retourné par l'interface de programmation d'application WSSubject.getRunAsSubject afin d'éviter de remplacer des objets existants.
La majorité des données présentes dans le sujet n'est pas propagée en aval à un autre serveur. Seul le jeton de justificatif présent dans le justificatif WSCredential est propagé en aval et un nouveau sujet de l'appelant est généré.
Procédure
- Accédez aux données d'identification WSCredential. Le justificatif WSCredential est décrit dans la documentation API.
- Placez ou définissez les données dans la mappe de table des justificatifs.
Exemple
try { javax.security.auth.Subject runas_subject;
com.ibm.websphere.security.cred.WSCredential runas_cred;
runas_subject = com.ibm.websphere.security.auth.WSSubject.getRunAsSubject();
if (runas_subject != null) { runas_cred = runas_subject.getPublicCredentials
com.ibm.websphere.security.cred.WSCredential.class).iterator().next();
String RUNASDATA = (String) runas_cred.get ("MYKEY")
System.out.println("My data from the RunAs credential is: " + RUNASDATA ); } }
catch (WSSecurityException e) { // log error } catch (Exception e) { // log error }