Definición de un proveedor de servicios OAuth

El proveedor de servicios OAuth se define con un archivo de configuración del proveedor. Puede definir un proveedor de servicios OAuth editando el archivo OAuthSampleConfig.xml.

El archivo OauthSampleConfig.xml se encuentra en el directorio de propiedades de la instalación de WebSphere Application Server. Puede copiar y editar este archivo para definir un proveedor de servicios OAuth.

Cada parámetro tiene un valor personalizable de true, lo que significa que esta variable está pensada para que los usuarios la modifiquen, o un valor personalizable de false, lo que significa que normalmente los usuarios no actualizan esta variable. Los parámetros personalizables se exportan utilizando la tarea exportOAuthProps de wsadmin y se pueden importar utilizando la tarea importOAuthProps de wsadmin. De lo contrario, el atributo personalizable no tiene ningún efecto sobre los parámetros. El valor del parámetro personalizable se puede actualizar según sea necesario en función del entorno.
Avoid trouble Avoid trouble: El tipo de parámetro ws o cc se utiliza internamente y se puede ignorar al actualizar parámetros. gotcha
Tabla 1. Parámetros activos para clientes en memoria y almacenes de señales
Nombre del parámetro Valor Descripción Personalizable
oauth20.client.provider.classname Clase de implementación del proveedor de cliente Para el almacén de clientes en memoria, utilice el valor com.ibm.ws.security.oauth20.plugins.BaseClientProvider. False
oauth20.token.cache.classname Clase de implementación de memoria caché de señales Para el almacén de señales en memoria, utilice el valor com.ibm.ws.security.oauth20.plugins.BaseCache. False
oauth20.token.cache.jndi.tokens Nombre JNDI (Java™ Naming and Directory Interface) del objeto de memoria caché dinámica para las señales indexadas por ID El valor predeterminado es Services/cache/OAuth20MemTokenCache. Consulte la sección de configuración de la memoria caché dinámica para obtener más información de uso. False
oauth20.token.cache.jndi.users Nombre JNDI del objeto de memoria caché dinámica para las señales indexadas por usuario El valor predeterminado es Services/cache/OAuth20MemTokenOwnerCache. Consulte la sección de configuración de la memoria caché dinámica para obtener más información de uso. False
Tabla 2. Parámetros para almacenes de base de datos JDBC (Java Database Connectivity)
Nombre del parámetro Valor Descripción Personalizable
oauth20.client.provider.classname Nombre de clase de implementación del proveedor de cliente Para el almacén de clientes basado en JDBC, utilice el valor com.ibm.ws.security.oauth20.plugins.db.CachedDBClientProvider. Consulte la sección de tablas de la base de datos para obtener más detalles sobre la configuración de la base de datos. False
oauth20.token.cache.classname Nombre de clase de implementación de memoria caché de señales Para el almacén de señales basado en JDBC, utilice el valor com.ibm.ws.security.oauth20.plugins.db.CachedDBTokenStore. Consulte la sección de tablas de la base de datos para obtener más detalles sobre la configuración de la base de datos. False
oauthjdbc.JDBCProvider Nombre del proveedor JDBC Establezca este valor de modo que coincida con su proveedor de JDBC, por ejemplo jdbc/oauthProvider. False
oauthjdbc.client.table Nombre de la tabla utilizada para los clientes OAuth Establezca este valor de modo que coincida con el nombre de la tabla de base de datos, por ejemplo OAuthDBSchema.OAUTH20CLIENTCONFIG. False
oauthjdbc.token.table Nombre de la tabla utilizada para las señales OAuth Establezca este valor de modo que coincida con el nombre de la tabla de base de datos, por ejemplo OAuthDBSchema.OAUTH20CACHE. False
oauthjdbc.CleanupInterval Intervalo de limpieza de señales caducadas en segundos Tiempo de retardo en segundos entre la limpieza de señales caducadas en la tabla de señales de la base de datos. True
oauthjdbc.LimitRefreshToken sin utilizar sin utilizar True
oauth20.db.token.cache.jndi.tokens Nombre JNDI del objeto de memoria caché dinámica para las señales El almacén de datos está respaldado por una memoria caché dinámica del nombre especificado, por ejemplo services/cache/OAuth20DBTokenCache. Consulte la sección de configuración de la memoria caché dinámica para obtener más información de uso. False
oauth20.db.token.cache.jndi.client Nombre JNDI del objeto de memoria caché dinámica para los clientes El almacén de datos está respaldado por una memoria caché dinámica del nombre especificado, por ejemplo services/cache/OAuth20DBClientCache. Consulte la sección de configuración de la memoria caché dinámica para obtener más información de uso. False
Tabla 3. Longitudes de tiempo de acceso de OAuth. Según el nivel de autorización, se asigna tiempo de acceso a un cliente.
Nombre del parámetro Valor Descripción Personalizable
oauth20.max.authorization.grant.lifetime.seconds Tiempo de vida del otorgamiento de autorización, en segundos Duración en segundos de la validez del otorgamiento de una autorización, por ejemplo 604800. True
oauth20.code.lifetime.seconds Tiempo de vida del código de autorización, en segundos Duración en segundos de la validez del código de una autorización de OAuth, por ejemplo 60. True
oauth20.code.length entero Longitud de los códigos de autorización OAuth generados True
oauth20.token.lifetime.seconds entero Tiempo en segundos durante el cual la señal de acceso OAuth es válida. Este valor se personaliza habitualmente True
oauth20.access.token.length entero Longitud de las señales de acceso de OAuth generadas True
oauth20.issue.refresh.token true o false Un valor de false inhabilita el uso y la generación de señales de renovación en el proveedor OAuth True
oauth20.refresh.token.length El valor puede ser a partir de 50 El valor predeterminado es 50. True
oauth20.access.tokentypehandler.classname Se puede especificar cualquier manejador de señales OAuth20. El valor predeterminado es com.ibm.ws.security.oauth20.plugins.BaseTokenHandler. El tipo es cc. False
oauth20.mediator.classnames Nombre de clase opcional del mediador OAuth Consulte la sección sobre el mediador OAuth para obtener más detalles. False
oauth20.allow.public.clients true o false Un valor de false inhabilita el acceso de clientes públicos como se indica en la especificación de OAuth. True
oauth20.grant.types.allowed Los valores posibles son: authorization_code, password, refresh_tokens, client_credentials o implicit Lista de flujos de OAuth habilitados, tal como se detalla en la especificación de OAuth. False
oauth20.authorization.form.template URL opcional a la plantilla de autorización personalizada Si utiliza un formulario de autorización personalizado, especifique la ubicación de la plantilla. True
oauth20.authorization.error.template URL opcional a la plantilla de página de error de autorización personalizada Si utiliza una página de error de formulario de autorización personalizado, especifique la ubicación de la plantilla. True
oauth20.authorization.loginURL URL opcional a la página de inicio de sesión personalizada Si utiliza una página de inicio de sesión personalizada, especifique el URL de inicio de sesión. True
oauth20.audithandler.classname Nombre de clase del manejador de auditoría de OAuth Implementación opcional registro y auditoría avanzados. El valor predeterminado es com.ibm.oauth.core.api.audit.XMLFileOAuthAuditHandler. True
oauth20.template.lifetime.seconds El tiempo de vida de la plantilla, en segundos. El valor predeterminado es 600. El tiempo que una plantilla debe permanecer en la memoria caché de plantillas.

oauth20.template.lifetime.seconds alterará temporalmente cualquier valor en la propiedad del sistema JVM existente denominada com.ibm.ws.security.oauth20.util.defaultTemplateLifetime.

 
oauth20.template.waitTime El tiempo de espera de la plantilla, en segundos. El valor predeterminado es 120. El tiempo que se espera a que se cargue una plantilla desde un servidor remoto.  
oauth20.template.connectTime El tiempo de conexión de la plantilla, en segundos. El valor predeterminado es 120. El tiempo que se espera a que una conexión de servidor cargue una plantilla.  
oauth20.template.readTime El tiempo de lectura de la plantilla, en segundos. El valor predeterminado es 120. El tiempo permitido para que finalice la lectura de un documento de plantilla desde un servidor remoto.  
oauth20.template.count Recuento de plantillas. El valor predeterminado es 3. El número de plantillas que se obtienen simultáneamente.  
oauth20.grant.type.password.skip.validation true o false, el valor predeterminado es false Un valor true inhabilita la validación del propietario de recurso para el tipo de otorgamiento de contraseña.  
xmlFileAuditHandler.filename Nombre de archivo Nombre del archivo que se corresponde con el manejador de auditoría predeterminado. True
Tabla 4. Parámetros para la configuración del interceptor de asociación de confianza (TAI). Estos parámetros pueden añadirse opcionalmente en su lugar como propiedades personalizadas del TAI, lo que ofrece más flexibilidad. Se pueden añadir propiedades de TAI personalizadas adicionales como parámetros especificando type="tai"
Nombre del parámetro Valor Descripción Personalizable
Filter Se puede utilizar cualquier condición de filtro Consulte los parámetros de configuración de TAI y su sintaxis para obtener más detalles True
oauthOnly true o false Una propiedad de configuración del TAI de ejemplo, que se utiliza para restringir la autenticación sólo a OAuth (true) o utilizar otra autenticación habilitado (false). Consulte los parámetros de configuración del TAI para obtener más detalles. True
Tabla 5. Parámetros Autoauthorize Parámetro de punto final opcional y lista blanca de clientes para saltarse el paso de autorización para clientes con privilegios.
Nombre del parámetro Valor Descripción Personalizable
oauth20.autoauthorize.param Cualquier serie Para utilizar la autorización automática, debe añadirse el parámetro autoauthorize a las solicitudes como un parámetro de URL con un valor de true. False
oauth20.autoauthorize.clients Lista de ID de clientes registrados Los clientes de esta lista pueden participar en autoauthorization. True
Tabla 6. Valores opcionales para sustituir series de URI de cliente, para nombres de sistema principal dinámicos. Las variables deben utilizar la sintaxis '${VAR_NAME}'.
Nombre del parámetro Valor Descripción Personalizable
oauth20.client.uri.substitutions sin utilizar sin utilizar False
Tabla 7. Valores opcionales para configurar el ámbito predeterminado del servidor. Los valores son series delimitadas por espacios.
Nombre del parámetro Valor Descripción Personalizable
oauth20.scope.preAuthorized cualquier serie Una lista de ámbitos para todos los clientes True

Icon that indicates the type of topic Concept topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_oauthdefineprovider
File name: cwbs_oauthdefineprovider.html