Token de Acceso
Las transacciones OAuth correctas requieren que el servidor de autorización del dominio de identidad de IAM emita tokens de acceso para utilizarlos en la autenticación de una llamada de API. Un token de acceso representa una autorización emitida a la aplicación cliente que contiene las credenciales utilizadas para acceder a los recursos protegidos OAuth.
El token de acceso proporciona una sesión (con ámbito y caducidad) que la aplicación cliente puede utilizar para realizar tareas en la API de REST de los dominios de identidad. El token de acceso se puede obtener mediante la consola del dominio de identidad o mediante programación (realización de una llamada a la API de REST mediante el ID y el secreto de cliente de la aplicación). Las aplicaciones pueden solicitar un token de acceso para acceder a los puntos finales protegidos de diferentes formas, según el tipo de permiso especificado en la aplicación. Un permiso es una credencial que representa la autorización del propietario del recurso para acceder a un recurso protegido. Consulte Tipos de permiso de acceso.
Nombre | Valor |
---|---|
tok_type*
|
Identifica el tipo de token: AT |
iss
|
Principal que ha emitido el token: https://<domainURL>
|
sub
|
Identifica la entidad (usuario/cliente) que solicita acceso. El identificador de asunto es localmente único y está destinado a ser consumido por el cliente. En el caso de los tokens IDPropagation, contiene el ID de usuario del usuario. En otros casos, contiene clientID. |
sub_mappingattr*
|
Atributo utilizado para buscar sub en el almacén de ID. Se trata de la asignación attr de la configuración de SSO. |
sub_type
|
El token de acceso de dominios de identidad contiene la reclamación Las entidades que procesan y validan el token de acceso pueden utilizar el valor de la reclamación |
user_id*
|
GUID de dominios de identidad del usuario del contexto AuthN para tokens de usuario. No está presente en tokens solo de cliente. |
user_displayname*
|
Nombre mostrado de los dominios de identidad del usuario (255 caracteres ASCII máximos) del contexto AuthN. No está presente en tokens solo de cliente. |
user_tenantname*
|
Nombre de inquilino de usuario (255 caracteres ASCII como máximo). Puede ser diferente del arrendamiento de recursos para casos de uso entre inquilinos. El GUID del inquilino no se guarda específicamente en el token y no está presente en los tokens de solo cliente. |
tenant*
|
Nombre del inquilino del recurso cuando se realizó la solicitud del token de acceso (255 caracteres ASCII máximos). El GUID del inquilino del recurso no se guarda específicamente en el token. |
user.tenant.name*
|
Igual que tenant. Se realiza un seguimiento para fines de compatibilidad con versiones anteriores hasta que no haya más consumidores heredados. Nota: el nombre de inquilino es el dominio de identidad. |
aud
|
Contiene la cadena de URI que espera el servidor de recursos para que coincida con los prefijos de recursos de la URL de destino. Se pueden especificar varias cadenas de URI con el formato AUD estándar. Este es el caso cuando la solicitud de OIDC también contiene ámbitos para algún otro servidor de recursos. Por ejemplo: ["https://<domainURL>/", "https://example.com"] |
iat
|
Hora (hora de UNIX) en que se emitió el JWT. UNIX Epoch Time es un número JSON que representa el número de segundos desde 1970-01-01T0:0:0Z, medido en Coordinated Universal Time (UTC) hasta la fecha/hora. |
sid
|
El ID de sesión del token de identidad es el token de identidad que se ha utilizado durante la solicitud del token. |
exp
|
Tiempo (tiempo de UNIX) en que caduca el JWT (en segundos). Consulte la tabla de caducidad de token. |
scope
|
Cadena delimitada por espacios que contiene ámbitos. |
jti
|
Identificador único generado por el servidor para el ID de JWT. |
client_id*
|
ID de cliente OAuth. Este es el GUID del cliente OAuth que realiza la solicitud. Cuando Cloud Gate realiza solicitudes, este es el GUID de OAuth CloudGate definido en el arrendamiento global de oracle. |
client_name*
|
OAuth client_name. Este es el nombre del cliente OAuth que realiza la solicitud. Cuando CloudGate realiza solicitudes, este es el nombre del cliente CloudGate OAuth definido en el arrendamiento global de oracle. |
client_tenantname*
|
Nombre de inquilino de cliente (máximo 255). Puede ser diferente del arrendamiento de recursos para casos de uso entre inquilinos. |
Especificación de la caducidad de un token de acceso personalizado
Utilice la siguiente solicitud y respuesta de ejemplo para especificar un valor de caducidad de token de acceso personalizado en una solicitud de token de acceso a un dominio de identidad.
La caducidad del token personalizado sigue estando sujeta a las reglas de caducidad del token de acceso general. Consulte la tabla de caducidad de token.
Solicitud de ejemplo
curl -k -i
-H 'Authorization: Basic dGVzdERvbWFpbkFkbWluOmZmNGUzNGE3LWVlNGQtNDAzNy1iNmNmLTUwZGVmMmNjMzM5Zg=='
-H 'Content-Type: application/x-www-form-urlencoded; charset=utf-8'
--request POST 'https://<domainURL>/oauth2/v1/token'
-d 'grant_type=client_credentials&scope=urn:opc:idm:__myscopes__%20urn:opc:resource:expiry=300'
Respuesta de ejemplo
{
"access_token":"eyJ4NXQjUzIc....q3E8x1tTEwPthTg",
"token_type":"Bearer",
"expires_in":300
}