Création d'un jeton SAML bearer à l'aide l'API
Utilisez l'API de bibliothèque SAML pour créer un jeton SAML bearer (porteur).
Pourquoi et quand exécuter cette tâche
Cette bibliothèque vous permet de créer un jeton porteur SAML. L'API de bibliothèque SAML est utilisée pour la création des objets de configuration SAML requis. Puis ces objets de configuration servent à générer un jeton bearer SAML.
Procédure
Exemple
Utilisez l'exemple de code suivant pour créer un jeton bearer SAML version 1.1 à partir du sujet :
SAMLTokenFactory samlFactory = SAMLTokenFactory.getInstance(SAMLTokenFactory.WssSamlV11Token11)
RequesterConfig reqData = samlFactory.newBearerTokenGenerateConfig();
ProviderConfig samlIssuerCfg = samlFactory.newDefaultProviderConfig(“WebSphere Server”);
Subject subject = com.ibm.websphere.security.auth.WSSubject.getRunAsSubject();
SAMLToken samlToken = samlFactory.newSAMLToken(subject, reqData, samlIssuerCfg);
Utilisez l'exemple de code suivant pour créer un jeton bearer SAML version 1.1 sans utiliser le sujet :
SAMLTokenFactory samlFactory = SAMLTokenFactory.getInstance(SAMLTokenFactory.WssSamlV11Token11);
RequesterConfig reqData = samlFactory.newBearerTokenGenerateConfig();
reqData.setAuthenticationMethod("Password"); //Méthode d'authentification de l'assertion
ProviderConfig samlIssuerCfg = samlFactory.newDefaultProviderConfig(Self issuer);
CredentialConfig cred = samlFactory.newCredentialConfig ();
cred.setRequesterNameID("Alice"); // NameIdentifier SAML
//Attributs SAML :
SAMLAttribute attribute = new SAMLAttribute
("email" /* Name*/, new String[] {"joe@websphere"}
/*Attribute Values in String*/,null
/*Attribute Values in XML */, "WebSphere" /* Namespace*/, "email" /* format*/, "joe" /*Friendly_name */);
ArrayList<SAMLAttribute> al = new ArrayList<SAMLAttribute>();
al.add(attribute);
attribute = new SAMLAttribute("Membership", new String[] {"Super users", "Mon équipe"}, null, null, null, null );
al.add(attribute);
cred.setSAMLAttributes(al);
SAMLToken samlToken = samlFactory.newSAMLToken(cred, reqData, samlIssuerCfg);