5.2. Configurer PicketLink STS
PicketLink STS définit plusieurs interfaces qui fournissent des points d'extension où des implémentations peuvent être branchées via la configuration et les valeurs par défaut de certaines propriétés peuvent être spécifiées via la configuration. Toutes les configurations de PicketLink STS doivent être spécifiées dans le fichier
picketlink-sts.xml. Voici les éléments qui peuvent être configurés dans le fichier picketlink-sts.xml.
Note
Dans le texte qui suit, un prestataire de services fait référence au service Web qui requiert un jeton de sécurité à présenter par ses clients.
PicketLinkSTS: élément root. Définit des propriétés qui permettent à l'administrateur STS de définir les valeurs par défaut suivantes :STSName: chaîne représentant le nom du service de jeton de sécurité. Si non spécifié, la valeurPicketLinkSTSpar défaut sera utilisée.TokenTimeout: la valeur de durée de vie du jeton en econdes. Si non spécifié, la valeur par défaut 3600 (une heure) sera utilisée.EncryptToken: valeur booléenne spécifiant si les jetons émis doivent être cryptés ou non. La valeur par défaut est false.
KeyProvider: cet élément et tous ses sous-éléments sont utilisées pour configurer le keystore utilisé par PicketLink STS pour signer et chiffrer les jetons. Les propriétés comme l'emplacement du keystore, son mot de passe et l'alias de signature (clé privée) et mot de passe sont tous configurés dans cette section.RequestHandler: cet élément spécifie le nom qualifié complet de l'implémentation deWSTrustRequestHandlerà utiliser. Si non spécifié, la valeur par défautorg.picketlink.identity.federation.core.wstrust.StandardRequestHandlersera utilisée.SecurityTokenProvider: cette section spécifie les implémentationsSecurityTokenProviderqui doivent être utilisées pour gérer chaque type de jeton de sécurité. Dans l'exemple, nous avons deux fournisseurs - un qui gère les jetons de typeSpecialTokenet un qui gère les jetons de typeStandardToken. LeWSTrustRequestHandlerappelle la méthodegetProviderForTokenType(type String) deSTSConfigurationpour obtenir une référence auSecurityTokenProviderqui convient.TokenTimeout: ceci est utilisé par leWSTrustRequestHandlerquand aucune durée de vie n'a été spécifiée dans la requête de WS-Trust. Il crée une instance de durée de vie qui a l'heure actuelle comme heure de création et expire après un nombre indiqué de secondes.ServiceProviders: cette section spécifie les types de jetons qui doivent être utilisés pour chaque fournisseur de service (le service Web qui requiert un jeton de sécurité). Lorsqu'une demande WS-Trust ne contient pas le type de jeton, leWSTrustRequestHandlerdoit utiliser le point de terminaison du fournisseur de service pour déterminer le type du jeton qui doit être délivré.EncryptToken: ceci est utilisé par leWSTrustRequestHandlerpour décider si le jeton émis doit être crypté ou non. Si true, le certificat de clé publique (PKC) du prestataire de services sera utilisé pour crypter le jeton
Ce qui suit est un exemple de configuration PicketLink STS.
Exemple 5.3. Configuration PicketLink STS