Définition d'un fournisseur de services OAuth

Le fournisseur de services OAuth est défini avec un fichier de configuration de fournisseur. Vous pouvez définir un fournisseur de services OAuth en éditant le fichier OAuthSampleConfig.xml.

Le fichier OauthSampleConfig.xml se trouve dans le répertoire des propriétés de votre installation WebSphere Application Server. Vous pouvez le copier et l'éditer pour définir un fournisseur de services OAuth.

Chaque paramètre comporte une valeur personnalisable true (ce qui signifie que cette variable peut être modifiée par les utilisateurs) ou false (ce qui signifie qu'en règle générale, cette variable n'est pas mise à jour par les utilisateurs). Les paramètres personnalisables sont exportés à l'aide de la tâche exportOAuthProps wsadmin, et peuvent être importés à l'aide de la tâche importOAuthProps wsadmin. Sinon, l'attribut personnalisable n'a aucun impact sur les paramètres. La valeur de paramètre personnalisable peut être mise à jour en fonction de votre environnement.
Eviter les incidents Eviter les incidents: Le type de paramètre ws ou cc est utilisé en interne et peut être ignoré lors de la mise à jour des paramètres.gotcha
Tableau 1. Paramètres actifs des fichiers de clients et de jetons en mémoire
Nom de paramètre valeur Description Icônes
oauth20.client.provider.classname Classe d'implémentation du fournisseur de client Pour le fichier client en mémoire, utilisez la valeur com.ibm.ws.security.oauth20.plugins.BaseClientProvider. False
oauth20.token.cache.classname Classe d'implémentation de la mémoire cache des jetons Pour le fichier de jetons en mémoire, utilisez la valeur com.ibm.ws.security.oauth20.plugins.BaseCache. False
oauth20.token.cache.jndi.tokens Nom JNDI (Java™ Naming and Directory Interface) de l'objet de mémoire cache dynamique pour les jetons indexés par ID La valeur par défaut est Services/cache/OAuth20MemTokenCache. Voir la section sur la configuration de la mise en cache dynamique pour obtenir des détails sur l'utilisation. False
oauth20.token.cache.jndi.users Nom JNDI de l'objet de mémoire cache dynamique pour les jetons indexés par utilisateur La valeur par défaut est Services/cache/OAuth20MemTokenOwnerCache. Voir la section sur la configuration de la mise en cache dynamique pour obtenir des détails sur l'utilisation. False
Tableau 2. Paramètres des librairies de base de données JDBC (Java Database Connectivity)
Nom de paramètre valeur Description Icônes
oauth20.client.provider.classname Nom de classe d'implémentation du fournisseur de clients Pour le fichier de clients JDBC, utilisez la valeur com.ibm.ws.security.oauth20.plugins.db.CachedDBClientProvider. Voir la section Tableau de base de données pour plus de détails sur la configuration de base de données. False
oauth20.token.cache.classname Nom de classe d'implémentation de la mémoire cache des jetons Pour le fichier de jetons JDBC, utilisez la valeur com.ibm.ws.security.oauth20.plugins.db.CachedDBTokenStore. Voir la section Tableau de base de données pour plus de détails sur la configuration de base de données. False
oauthjdbc.JDBCProvider Nom du fournisseur JDBC Définir cette valeur pour qu'elle corresponde à votre fournisseur JDBC (jdbc/oauthProvider, par exemple). False
oauthjdbc.client.table Nom de table utilisé pour les clients OAuth Définir cette valeur pour qu'elle corresponde au nom de votre table de base de données (OAuthDBSchema.OAUTH20CLIENTCONFIG, par exemple). False
oauthjdbc.token.table Nom de table utilisé pour les jetons OAuth Définir cette valeur pour qu'elle corresponde au nom de votre table de base de données (OAuthDBSchema.OAUTH20CACHE, par exemple). False
oauthjdbc.CleanupInterval Intervalle de nettoyage des jetons arrivés à expiration (en secondes) Délai, en secondes, entre les nettoyages des jetons arrivés à expiration dans la table de jetons de la base de données. True
oauthjdbc.LimitRefreshToken non utilisé non utilisé True
oauth20.db.token.cache.jndi.tokens Nom JNDI de l'objet de mémoire cache dynamique pour les jetons Le magasin de données est assisté d'une mémoire cache dynamique portant le nom spécifié (services/cache/OAuth20DBTokenCache, par exemple). Voir la section sur la configuration de la mise en cache dynamique pour obtenir des détails sur l'utilisation. False
oauth20.db.token.cache.jndi.client Nom JNDI de l'objet de mémoire cache dynamique pour les clients Le magasin de données est assisté d'une mémoire cache dynamique portant le nom spécifié (services/cache/OAuth20DBClientCache, par exemple). Voir la section sur la configuration de la mise en cache dynamique pour obtenir des détails sur l'utilisation. False
Tableau 3. Temps d'accès OAuth En fonction du niveau d'autorisation, un temps d'accès est attribué à un client.
Nom de paramètre valeur Description Icônes
oauth20.max.authorization.grant.lifetime.seconds Durée de vie de l'accord d'autorisation, en secondes Durée de validité, en secondes, d'un accord d'autorisation (604800, par exemple). True
oauth20.code.lifetime.seconds Durée de vie du code d'autorisation, en secondes Durée de validité, en secondes, du code d'autorisation OAuth (60, par exemple). True
oauth20.code.length entier Longueur des codes d'autorisation OAuth générés True
oauth20.token.lifetime.seconds entier Durée de validité, en secondes, du jeton d'accès OAuth (valeur généralement personnalisée) True
oauth20.access.token.length entier Longueur des jetons d'accès OAuth générés True
oauth20.issue.refresh.token true ou false La valeur false désactive l'utilisation et la génération de jetons régénérés dans le fournisseur OAuth True
oauth20.refresh.token.length La valeur peut commencer à 50 La valeur par défaut est 50. True
oauth20.access.tokentypehandler.classname Un gestionnaire de jetons OAuth20 peut être spécifié. La valeur par défaut est com.ibm.ws.security.oauth20.plugins.BaseTokenHandler. Le type est cc. False
oauth20.mediator.classnames Nom de classe facultatif du médiateur OAuth Voir la section du médiateur OAuth pour plus de détails. False
oauth20.allow.public.clients true ou false La valeur false désactive l'accès des clients publics (voir la spécification OAuth). True
oauth20.grant.types.allowed Les valeurs possibles sont : authorization_code, password, refresh_tokens, client_credentials ou implicit Liste des flux OAuth activés (voir la spécification OAuth). False
oauth20.authorization.form.template URL facultative vers le modèle d'autorisation personnalisé Si vous utilisez le formulaire d'autorisation personnalisé, précisez l'emplacement du modèle. True
oauth20.authorization.error.template URL facultative vers le modèle de page d'erreur d'autorisation personnalisée Si vous utilisez une page d'erreur de formulaire d'autorisation personnalisé, précisez l'emplacement du modèle. True
oauth20.authorization.loginURL URL facultative vers la page de connexion personnalisée Si vous utilisez une page de connexion personnalisée, précisez l'URL de connexion. True
oauth20.audithandler.classname Nom de classe du gestionnaire d'audit OAuth Mise en oeuvre facultative pour la connexion et l'audit avancés. La valeur par défaut est com.ibm.oauth.core.api.audit.XMLFileOAuthAuditHandler. True
oauth20.template.lifetime.seconds Durée de vie d'un modèle, exprimée en secondes. La valeur par défaut est 600. Durée pendant laquelle un modèle doit être conservé dans le cache de modèle.

oauth20.template.lifetime.seconds remplace toute valeur définie pour la propriété de système JVM existante appelée com.ibm.ws.security.oauth20.util.defaultTemplateLifetime .

 
oauth20.template.waitTime Temps d'attente d'un modèle, exprimé en secondes. La valeur par défaut est 120. Temps d'attente à observer pour le chargement d'un modèle à partir d'un serveur distant.  
oauth20.template.connectTime Temps de connexion d'un modèle, exprimé en secondes. La valeur par défaut est 120. Temps d'attente à observer pour une connexion serveur afin de charger un modèle.  
oauth20.template.readTime Durée de lecture d'un modèle, exprimée en secondes. La valeur par défaut est 120. Durée allouée pour la lecture d'un modèle de document à partir d'un serveur distant.  
oauth20.template.count Nombre de modèles. La valeur par défaut est 3. Nombre de modèles pouvant être obtenus simultanément.  
oauth20.grant.type.password.skip.validation true ou false (la valeur par défaut est false) La valeur true désactive la validation du propriétaire de la ressource pour le type d'octroi de mot de passe.  
xmlFileAuditHandler.filename Nom de fichier Nom du fichier correspondant au gestionnaire d'audit par défaut. True
Tableau 4. Paramètres de configuration de l'intercepteur de relations de confiance (TAI). Ces paramètres peuvent éventuellement être ajoutés en tant que propriétés personnalisées TAI, ce qui donne une plus grande souplesse. Des propriétés TAI personnalisées supplémentaires peuvent être ajoutées en tant que paramètres en spécifiant type="tai"
Nom de paramètre valeur Description Icônes
Filter Une condition de filtre peut être utilisée Voir les paramètres et la syntaxe de configuration TAI pour plus de détails True
oauthOnly true ou false Exemple de propriété de configuration TAI utilisée pour limiter l'authentification à OAuth (true) ou utiliser une autre authentification activée (false). Voir les paramètres de configuration TAI pour plus de détails. True
Tableau 5. Paramètres d'autorisation automatique (autoauthorize). Liste blanche des paramètres et clients de noeud final facultatifs permettant d'ignorer l'étape d'autorisation pour les clients privilégiés.
Nom de paramètre valeur Description Icônes
oauth20.autoauthorize.param Toute chaîne Pour utiliser l'autorisation automatique, le paramètre autoauthorize doit être ajouté aux demandes sous la forme d'un paramètre URL avec la valeur true. False
oauth20.autoauthorize.clients Liste des ID client enregistrés Les clients de cette liste peuvent participer à l'autorisation automatique. True
Tableau 6. Valeurs facultatives pour remplacer les chaînes URI client pour les noms d'hôte dynamiques. Les variables doivent utiliser la syntaxe '${VAR_NAME}'.
Nom de paramètre valeur Description Icônes
oauth20.client.uri.substitutions non utilisé non utilisé False
Tableau 7. Optional values to configure server's default scope. Values are space delimited strings.
Nom de paramètre valeur Description Icônes
oauth20.scope.preAuthorized N'importe quelle chaîne A list of scopes given to all clients True

Icône indiquant le type de rubrique Rubrique de concept



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_oauthdefineprovider
Nom du fichier : cwbs_oauthdefineprovider.html