OpenID Connect Client
Cette fonction permet aux applications Web d'intégrer OpenID Connect 1.0 pour l'authentification des utilisateurs au lieu ou en plus du registre d'utilisateurs configuré.
Activation de cette fonction
Pour activer la
fonction OpenID Connect Client, ajoutez la déclaration
d'élément suivante dans l'élément featureManager de votre
fichier server.xml :
<feature>openidConnectClient-1.0</feature>
Versions de Java™ prises en charge
- JavaSE-1.6
- JavaSE-1.7
- JavaSE-1.8
Développement d'une fonction qui dépend de cette fonction
Si vous
développez une fonction qui dépend de la fonction OpenID
Connect Client, incluez l'élément suivant dans l'en-tête
Subsystem-Content du fichier manifeste de fonction pour votre
nouvelle fonction :
com.ibm.websphere.appserver.openidConnectClient-1.0; type="osgi.subsystem.feature"
Fonctions que cette fonction active
Eléments de configuration de la fonction
Vous pouvez utiliser les éléments suivants dans votre fichier server.xml pour configurer la fonction OpenID Connect Client :
- administrator-role
- authCache
- authFilter
- authentication
- authorization-roles
- basicRegistry
- classloading
- jaasLoginContextEntry
- jaasLoginModule
- library
- ltpa
- openidConnectClient
- quickStartSecurity
- trustAssociation
- administrator-role
- Collection d'utilisateurs et/ou de groupes ayant le rôle d'administrateur de serveur.
- authCache
- Contrôle de fonctionnement du cache d'authentification.
Nom de l'attribut Type de données Valeur par défaut Description allowBasicAuthLookup boolean true Autoriser la consultation par ID utilisateur et mot de passe haché initialSize int Minimum : 1
50 Nombre initial des entrées prises en charge par le cache d'authentification. maxSize int Minimum : 1
25000 Nombre maximal des entrées prises en charge par le cache d'authentification. timeout Période avec une précision à la milliseconde près 600s Durée après laquelle une entrée du cache sera supprimée. Indiquez une valeur entière positive suivie d'une unité de temps, qui peut être heure (h), minute (m), seconde (s) ou milliseconde (ms). Par exemple, pour 500 millisecondes, indiquez 500ms. Vous pouvez inclure plusieurs valeurs dans une même entrée. Par exemple, 1s500ms correspond à 1 seconde et demie. - authFilter
- Spécifie une règle de sélection qui représente les conditions qui correspondent aux en-têtes de
demande HTTP pour déterminer si la demande HTTP est ou non sélectionnée pour l'authentification.
Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. - authFilter > host
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
name string Spécifie le nom.
- authFilter > remoteAddress
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. ip string Spécifie l'adresse IP. matchType - lessThan
- equals
- greaterThan
- contains
- notContain
contains Spécifie le type de mise en correspondance. - lessThan
- Inférieur à
- equals
- Egal à
- greaterThan
- Supérieur à
- contains
- Contient
- notContain
- Ne contient pas
- authFilter > requestUrl
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
urlPattern string Spécifie le masque d'URL.
- authFilter > userAgent
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description agent string Spécifie l'agent utilisateur id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
- authFilter > webApp
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
name string Spécifie le nom.
- authentication
- Contrôle la configuration du service d'authentification intégré.
Nom de l'attribut Type de données Valeur par défaut Description allowHashtableLoginWithIdOnly boolean false Autoriser une application à se connecter en ayant recours uniquement à une identité dans les propriétés de table de hachage. Utilisez cette option uniquement lorsque vous avez des applications ayant besoin de cette dernière et que vous disposez d'autres moyens de valider l'identité. cacheEnabled boolean true Active le cache d'authentification. - authorization-roles
- %authorizationRoles.desc
Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. - authorization-roles > security-role
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. name string %roleName.desc - authorization-roles > security-role > group
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description access-id string %groupAccessId.desc id string ID de configuration unique. name string %groupName.desc
- authorization-roles > security-role > special-subject
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. type - EVERYONE
- ALL_AUTHENTICATED_USERS
%specialSubjectType.desc - EVERYONE
- %everyone.desc
- ALL_AUTHENTICATED_USERS
- %allAuthenticated.desc
- basicRegistry
- Un simple registre d'utilisateurs basés sur XML.
Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. ignoreCaseForAuthentication boolean false Autoriser l'authentification de nom d'utilisateur en ignorant la casse. realm string BasicRegistry Le nom du superdomaine représente le registre d'utilisateurs. - basicRegistry > group
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. name string Nom d'un groupe au sein d'un registre d'utilisateur de base.
- basicRegistry > user
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. name string Nom d'un utilisateur du registre d'utilisateurs de base. password Mot de passe codé réversible ou pouvant être haché unilatéralement (chaîne) Mot de passe d'un utilisateur dans un registre d'utilisateurs de base. La valeur peut être enregistrée en texte clair ou sous forme codée. Il est recommandé de coder le mot de passe. Pour cela, utilisez l'outil securityUtility avec l'option encode.
- classloading
- Chargement de classes global
Nom de l'attribut Type de données Valeur par défaut Description useJarUrls boolean false Indique s'il convient d'utiliser les URL jar: ou wsjar: pour faire référence à des fichiers dans des archives - jaasLoginContextEntry
- Configuration de l'entrée du contexte de connexion JAAS.
Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. loginModuleRef Liste de références aux éléments jaasLoginModule de niveau supérieur (chaîne dans laquelle les éléments sont séparés par des virgules). hashtable,userNameAndPassword,certificate,token Référence à l'ID d'un module de connexion JAAS. name string Nom d'une entrée de configuration JAAS. - jaasLoginModule
- Module de connexion dans la configuration JAAS.
Nom de l'attribut Type de données Valeur par défaut Description className string Nom de package complet de la classe de module de connexion JAAS. controlFlag - SUFFICIENT
- REQUISITE
- REQUIRED
- OPTIONAL
REQUIRED Indicateur de contrôle du module de connexion. Les valeurs valides sont REQUIRED, REQUISITE, SUFFICIENT et OPTIONAL. - SUFFICIENT
- L'élément LoginModule a la valeur SUFFICIENT pour la spécification JAAS. Il n'est pas nécessaire qu'il aboutisse. Si l'authentification aboutit, aucun autre élément LoginModule n'est appelé et l'appelant reprend le contrôle.
- REQUISITE
- L'élément LoginModule a la valeur REQUISITE pour la spécification JAAS. Cet élément doit aboutir. Si l'authentification échoue, aucun autre élément LoginModule n'est appelé et l'appelant reprend le contrôle.
- REQUIRED
- L'élément LoginModule a la valeur REQUIRED pour la spécification JAAS. Cet élément doit aboutir.
- OPTIONAL
- L'élément LoginModule a la valeur OPTIONAL pour la spécification JAAS. Il n'est pas nécessaire qu'il aboutisse.
id string ID de configuration unique. libraryRef Référence à lélément {0} de niveau supérieur (chaîne). Référence à l'ID de la configuration de bibliothèque partagée. - jaasLoginModule > library
Description : Référence à l'ID de la configuration de bibliothèque partagée.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description apiTypeVisibility string spec,ibm-api,api Types de package d'API que ce chargeur de classe de bibliothèque pourra voir, sous forme de liste d'éléments spec, ibm-api, api et third-party dans laquelle les éléments sont séparés par des virgules. description string Description de la bibliothèque partagée (pour les administrateurs) filesetRef Liste de références aux éléments fileset de niveau supérieur (chaîne dans laquelle les éléments sont séparés par des virgules). ID de l'ensemble de fichiers référencé name string Nom de la bibliothèque partagée (pour les administrateurs) - jaasLoginModule > library > file
Description : ID du fichier référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. name Chemin vers un fichier Nom de fichier complet
- jaasLoginModule > library > fileset
Description : ID de l'ensemble de fichiers référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description caseSensitive boolean true Booléen indiquant si la recherche doit se faire en tenant compte de la casse des caractères (valeur par défaut : true). dir Chemin vers un répertoire ${server.config.dir} Répertoire de base dans lequel rechercher les fichiers. excludes string Liste (séparée par des virgules ou des espaces) de masques de nom de fichier à exclure des résultats de la recherche. Par défaut, aucun fichier n'est exclu. id string ID de configuration unique. includes string * Liste (séparée par des virgules ou des espaces) de masques de nom de fichier à inclure dans les résultats de la recherche (valeur par défaut : *). scanInterval Période avec une précision à la milliseconde près 0 Intervalle entre chaque balayage de l'ensemble de fichiers pour déterminer s'il a subi des changements. Sa valeur est un entier long suivi de l'abréviation de l'unité de temps choisie : h pour les heures, m pour les minutes, s pour les secondes, ms pour les millisecondes. Par exemple, 2ms ou 5s. Désactivé par défaut (scanInterval=0). Indiquez une valeur entière positive suivie d'une unité de temps, qui peut être heure (h), minute (m), seconde (s) ou milliseconde (ms). Par exemple, pour 500 millisecondes, indiquez 500ms. Vous pouvez inclure plusieurs valeurs dans une même entrée. Par exemple, 1s500ms correspond à 1 seconde et demie.
- jaasLoginModule > library > folder
Description : ID du dossier référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description dir Chemin vers un répertoire Répertoire ou dossier à inclure dans le chemin d'accès aux classes de la bibliothèque afin de trouver les fichiers de ressources id string ID de configuration unique.
- library
- Bibliothèque partagée
Nom de l'attribut Type de données Valeur par défaut Description apiTypeVisibility string spec,ibm-api,api Types de package d'API que ce chargeur de classe de bibliothèque pourra voir, sous forme de liste d'éléments spec, ibm-api, api et third-party dans laquelle les éléments sont séparés par des virgules. description string Description de la bibliothèque partagée (pour les administrateurs) filesetRef Liste de références aux éléments fileset de niveau supérieur (chaîne dans laquelle les éléments sont séparés par des virgules). ID de l'ensemble de fichiers référencé id string ID de configuration unique. name string Nom de la bibliothèque partagée (pour les administrateurs) - library > file
Description : ID du fichier référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. name Chemin vers un fichier Nom de fichier complet
- library > fileset
Description : ID de l'ensemble de fichiers référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description caseSensitive boolean true Booléen indiquant si la recherche doit se faire en tenant compte de la casse des caractères (valeur par défaut : true). dir Chemin vers un répertoire ${server.config.dir} Répertoire de base dans lequel rechercher les fichiers. excludes string Liste (séparée par des virgules ou des espaces) de masques de nom de fichier à exclure des résultats de la recherche. Par défaut, aucun fichier n'est exclu. id string ID de configuration unique. includes string * Liste (séparée par des virgules ou des espaces) de masques de nom de fichier à inclure dans les résultats de la recherche (valeur par défaut : *). scanInterval Période avec une précision à la milliseconde près 0 Intervalle entre chaque balayage de l'ensemble de fichiers pour déterminer s'il a subi des changements. Sa valeur est un entier long suivi de l'abréviation de l'unité de temps choisie : h pour les heures, m pour les minutes, s pour les secondes, ms pour les millisecondes. Par exemple, 2ms ou 5s. Désactivé par défaut (scanInterval=0). Indiquez une valeur entière positive suivie d'une unité de temps, qui peut être heure (h), minute (m), seconde (s) ou milliseconde (ms). Par exemple, pour 500 millisecondes, indiquez 500ms. Vous pouvez inclure plusieurs valeurs dans une même entrée. Par exemple, 1s500ms correspond à 1 seconde et demie.
- library > folder
Description : ID du dossier référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description dir Chemin vers un répertoire Répertoire ou dossier à inclure dans le chemin d'accès aux classes de la bibliothèque afin de trouver les fichiers de ressources id string ID de configuration unique.
- ltpa
- Configuration de jeton LTPA (Lightweight Third Party Authentication).
Nom de l'attribut Type de données Valeur par défaut Description expiration Période avec une précision à la minute près 120m Délai, en minutes, à l'issue duquel un jeton arrive à expiration. Indiquez une valeur entière positive suivie d'une unité de temps, qui peut être heure (h) ou minute (m). Par exemple, pour 30 minutes, indiquez 30m. Vous pouvez inclure plusieurs valeurs dans une même entrée. Par exemple, 1h30m correspond à 90 minutes. keysFileName Chemin vers un fichier ${server.output.dir}/resources/security/ltpa.keys Chemin du fichier contenant les clés de jeton. keysPassword Mot de passe codé réversible (chaîne) {xor}CDo9Hgw= Mot de passe des clés de jeton. La valeur peut être enregistrée en texte clair ou sous forme codée. Il est recommandé de coder le mot de passe. Pour cela, utilisez l'outil securityUtility avec l'option de codage. monitorInterval Période avec une précision à la milliseconde près 0ms Intervalle suivant lequel le serveur recherche des mises à jour pour le fichier de clés LTPA. Indiquez une valeur entière positive suivie d'une unité de temps, qui peut être heure (h), minute (m), seconde (s) ou milliseconde (ms). Par exemple, pour 500 millisecondes, indiquez 500ms. Vous pouvez inclure plusieurs valeurs dans une même entrée. Par exemple, 1s500ms correspond à 1 seconde et demie. - openidConnectClient
- Client OpenID Connect.
Nom de l'attribut Type de données Valeur par défaut Description authFilterRef Référence à lélément {0} de niveau supérieur (chaîne). Spécifie la référence de filtre d'authentification. authorizationEndpointUrl string Indique une URL de noeud d'autorisation clientId string Identité du client. clientSecret Mot de passe codé réversible (chaîne) Clé secrète du client. hostNameVerificationEnabled boolean false Indique si la vérification du nom d'hôte doit être activée. httpsRequired boolean true Communication SSL obligatoire entre la partie utilisatrice OpenID et le service de fournisseur. id string ID de configuration unique. includeIdTokenInSubject boolean true Indique s'il faut inclure l'ID de jeton dans le sujet client. initialStateCacheCapacity int Minimum : 0
3000 Spécifie la capacité initiale du cache d'état. La capacité augmente d'elle-même en cas de besoin. issuerIdentifier string Un ID émetteur est une URL sensible à la casse utilisant le schéma HTTPS contenant le schéma, l'hôte et éventuellement le numéro de port et les composants de chemin. mapIdentityToRegistryUser boolean false Indique si l'identité doit être mappée à l'utilisateur du registre. Le registre d'utilisateurs n'est pas utilisé pour créer le sujet utilisateur. nonceEnabled boolean false Activer le paramètre nonce dans le flux de codes d'autorisation. redirectToRPHostAndPort string Spécifie un hôte et un numéro de port OpenID de redirection de la partie utilisatrice. scope tokenType openid profile Portée OpenID Connect (comme détaillée dans la spécification OpenID Connect) permise pour le fournisseur. signatureAlgorithm - HS256
- none
- RS256
HS256 Spécifie l'algorithme de signature qui sera utilisé pour vérifier la signature du jeton ID. - HS256
- %tokenSignAlgorithm.HS256
- none
- %tokenSignAlgorithm.NONE
- RS256
- %tokenSignAlgorithm.RS256
sslRef string Spécifie un ID de la configuration SSL utilisée pour se connecter au fournisseur OpenID Connect. tokenEndpointUrl string Indique une URL de noeud final de jeton. trustAliasName string Nom de l'alias de clé permettant de localiser la clé publique pour la validation de signature avec un algorithme symétrique. trustStoreRef string Magasin de clés contenant la clé publique requise pour vérifier la signature du jeton ID. userIdentityToCreateSubject string sub Spécifie une identité utilisateur dans le jeton ID pour créer le sujet utilisateur. - openidConnectClient > authFilter
Description : Spécifie la référence de filtre d'authentification.Obligatoire : falseType de données - openidConnectClient > authFilter > host
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
name string Spécifie le nom.
- openidConnectClient > authFilter > remoteAddress
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. ip string Spécifie l'adresse IP. matchType - lessThan
- equals
- greaterThan
- contains
- notContain
contains Spécifie le type de mise en correspondance. - lessThan
- Inférieur à
- equals
- Egal à
- greaterThan
- Supérieur à
- contains
- Contient
- notContain
- Ne contient pas
- openidConnectClient > authFilter > requestUrl
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
urlPattern string Spécifie le masque d'URL.
- openidConnectClient > authFilter > userAgent
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description agent string Spécifie l'agent utilisateur id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
- openidConnectClient > authFilter > webApp
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. matchType - equals
- contains
- notContain
contains Spécifie le type de mise en correspondance. - equals
- Egal à
- contains
- Contient
- notContain
- Ne contient pas
name string Spécifie le nom.
- quickStartSecurity
- Configuration de la sécurité d'administration simple
Nom de l'attribut Type de données Valeur par défaut Description userName string Utilisateur unique défini lors de la configuration de sécurité du démarrage rapide. Le rôle Administrateur est accordé à cet utilisateur. userPassword Mot de passe codé réversible (chaîne) Mot de passe de l'utilisateur unique défini lors de la configuration de sécurité du démarrage rapide. Il est recommandé de coder ce mot de passe. Pour cela, utilisez l'outil securityUtility avec l'option encode. - trustAssociation
- Contrôle le fonctionnement de l'intercepteur TAI (Trust Association Interceptor).
Nom de l'attribut Type de données Valeur par défaut Description failOverToAppAuthType boolean false Autoriser un intercepteur à utiliser le mécanisme d'authentification de l'application comme solution de repli id string ID de configuration unique. invokeForUnprotectedURI boolean false Contrôle si le service TAI est appelé pour un URI non protégé. - trustAssociation > interceptors
Description : ID de configuration unique.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description className string Nom de package complet de la classe de l'intercepteur. enabled boolean true Active ou désactive l'intercepteur. id string ID de configuration unique. invokeAfterSSO boolean true Appeler un intercepteur après la connexion unique (SSO). invokeBeforeSSO boolean false Appeler un intercepteur avant la connexion unique (SSO). libraryRef Référence à lélément {0} de niveau supérieur (chaîne). Référence à l'ID de la configuration de bibliothèque partagée. - trustAssociation > interceptors > library
Description : Référence à l'ID de la configuration de bibliothèque partagée.Obligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description apiTypeVisibility string spec,ibm-api,api Types de package d'API que ce chargeur de classe de bibliothèque pourra voir, sous forme de liste d'éléments spec, ibm-api, api et third-party dans laquelle les éléments sont séparés par des virgules. description string Description de la bibliothèque partagée (pour les administrateurs) filesetRef Liste de références aux éléments fileset de niveau supérieur (chaîne dans laquelle les éléments sont séparés par des virgules). ID de l'ensemble de fichiers référencé name string Nom de la bibliothèque partagée (pour les administrateurs) - trustAssociation > interceptors > library > file
Description : ID du fichier référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description id string ID de configuration unique. name Chemin vers un fichier Nom de fichier complet
- trustAssociation > interceptors > library > fileset
Description : ID de l'ensemble de fichiers référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description caseSensitive boolean true Booléen indiquant si la recherche doit se faire en tenant compte de la casse des caractères (valeur par défaut : true). dir Chemin vers un répertoire ${server.config.dir} Répertoire de base dans lequel rechercher les fichiers. excludes string Liste (séparée par des virgules ou des espaces) de masques de nom de fichier à exclure des résultats de la recherche. Par défaut, aucun fichier n'est exclu. id string ID de configuration unique. includes string * Liste (séparée par des virgules ou des espaces) de masques de nom de fichier à inclure dans les résultats de la recherche (valeur par défaut : *). scanInterval Période avec une précision à la milliseconde près 0 Intervalle entre chaque balayage de l'ensemble de fichiers pour déterminer s'il a subi des changements. Sa valeur est un entier long suivi de l'abréviation de l'unité de temps choisie : h pour les heures, m pour les minutes, s pour les secondes, ms pour les millisecondes. Par exemple, 2ms ou 5s. Désactivé par défaut (scanInterval=0). Indiquez une valeur entière positive suivie d'une unité de temps, qui peut être heure (h), minute (m), seconde (s) ou milliseconde (ms). Par exemple, pour 500 millisecondes, indiquez 500ms. Vous pouvez inclure plusieurs valeurs dans une même entrée. Par exemple, 1s500ms correspond à 1 seconde et demie.
- trustAssociation > interceptors > library > folder
Description : ID du dossier référencéObligatoire : falseType de données Nom de l'attribut Type de données Valeur par défaut Description dir Chemin vers un répertoire Répertoire ou dossier à inclure dans le chemin d'accès aux classes de la bibliothèque afin de trouver les fichiers de ressources id string ID de configuration unique.