Obtención de un token de inicio de sesión
Función
Esta API se utiliza para obtener un token de inicio de sesión para iniciar sesión a través de un agente de identidad personalizado. Los tokens de inicio de sesión se emiten a los usuarios para que inicien sesión a través de agentes de identidad personalizados. Cada token de inicio de sesión contiene la identidad y la información de sesión de un usuario. Para iniciar sesión en una consola de servicio en la nube con una URL de agente de identidad personalizada, invoque a esta API para obtener un token de inicio de sesión para la autenticación.
Se puede invocar a la API utilizando tanto el punto de conexión global como los puntos de conexión específicos de la región. Para los puntos de conexión de IAM, consulte Regiones y puntos de conexión.
Por defecto, un token de inicio de sesión es válido durante 10 minutos. Puede establecer un período de validez de 10 minutos a 12 horas.
URI
POST /v3.0/OS-AUTH/securitytoken/logintokens
Parámetros de solicitud
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| Content-Type | Sí | String | Rellene application/json;charset=utf8 en este campo. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| Sí | Object | Información de autenticación. |
| Parámetro | Obligatorio | Tipo | Descripción |
|---|---|---|---|
| access | Sí | String | AK. |
| secret | Sí | String | SK. |
| id | Sí | String | Token de seguridad temporal. Un token de inicio de sesión se puede obtener usando el token de seguridad de un usuario de agente de identidad personalizado o un usuario común. Para obtener más información, véase Obtención de una clave de acceso temporal y un token de seguridad a través de un token. Un token de seguridad se puede obtener mediante una agencia y el parámetro session_user.name debe especificarse en el cuerpo de la solicitud. Para obtener más información, consulte Obtención de una clave de acceso temporal y un token de seguridad a través de una delegación. |
| duration_seconds | No | Integer | Período de validez (segundos) del token de inicio de sesión. El valor oscila entre 10 minutos y 12 horas. El valor predeterminado es 10 minutos, es decir, 600 segundos. NOTA:
|
Parámetros de respuesta
| Parámetro | Tipo | Descripción |
|---|---|---|
| X-Subject-LoginToken | String | Token de inicio de sesión firmado. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| Object | Información del token de inicio de sesión. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| domain_id | String | ID de cuenta. |
| expires_at | String | Hora en que caducará el token de inicio de sesión. |
| method | String | Método de autenticación. El valor es de federation_proxy para un usuario de agente de identidad personalizado y de token para un usuario de Huawei Cloud. |
| user_id | String | ID de usuario. |
| user_name | String | Nombre de usuario. |
| session_id | String | ID de sesión. |
| session_user_id | String | ID de un usuario de agente de identidad personalizado. |
| session_name | String | Nombre de un usuario de agente de identidad personalizado. NOTA: Este parámetro se devolverá cuando obtenga una clave de acceso temporal y un token de seguridad mediante una delegación y especifique el parámetro session_user.name en el cuerpo de la solicitud. El valor de este parámetro es el valor de session_user.name. |
| Object | Información sobre la parte delegada. NOTA: Este parámetro se devolverá cuando obtenga una clave de acceso temporal y un token de seguridad mediante una delegación y especifique el parámetro session_user.name en el cuerpo de la solicitud. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| Object | Información sobre la parte delegada. |
| Parámetro | Tipo | Descripción |
|---|---|---|
| Object | Información de cuenta delegada. | |
| name | String | Nombre de usuario de la parte delegada. |
| password_expires_at | String | Tiempo de caducidad de la contraseña. NOTA: El valor es una hora UTC en el formato AAAA-MM-DDTHH:mm:ss.ssssssZ, por ejemplo, 2023-06-28T08:56:33.710000Z. Para obtener más información sobre los formatos de fecha y hora, consulte ISO-8601. |
| id | String | ID de usuario. |
Solicitud de ejemplo
Solicitud de obtención de un token de inicio de sesión a través de un agente de identidad personalizado
POST https://iam.myhuaweicloud.com/v3.0/OS-AUTH/securitytoken/logintokens
{
"auth": {
"securitytoken": {
"access": "LUJHNN4WB569PGAP...",
"secret": "7qtrm2cku0XubixiVkBOcvMfpnu7H2mLN...",
"id": "gQpjbi1ub3J0a...",
"duration_seconds":"600"
}
}
} Ejemplo de respuesta
Código de estado: 201
La solicitud se ha realizado correctamente.
Ejemplo 1: Respuesta a la solicitud para obtener una clave de acceso temporal y un token de seguridad a través de un token
Ejemplo 2: Respuesta a la solicitud de obtención de una clave de acceso temporal y un token de seguridad a través de una agencia (con session_user.name en el cuerpo de la solicitud)
- Ejemplo 1
Parameters in the response header X-Subject-LoginToken:MIIatAYJKoZIhvcNAQcCoIIapTCCGqECAQExDTALB...Parameters in the response body { "logintoken": { "domain_id": "05262121fb00d5c30fbec013bc1...", "expires_at": "2020-01-20T08:18:36.447000Z", "method": "token", "user_id": "0526213b8a80d38a1f31c013ed...", "user_name": "IAMUser", "session_user_id": "093f75808b8089ba1f6dc000c7cac...", "session_id": "40b328b6683a41b9bf8e7185e..." } } - Ejemplo 2
Parameters in the response header X-Subject-LoginToken:MIIatAYJKoZIhvcNAQcCoIIapTCCGqECAQExDTALB...Parameters in the response body { "logintoken": { "domain_id": "05262121fb00d5c30fbec01...", "expires_at": "2020-01-23T03:27:26.728000Z", "method": "federation_proxy", "user_id": "07826f367b80d2474ff9c013a...", "user_name": "IAMDomainA/IAMAgency", "session_id": "0012c8e6adda4ce787e90585d...", "session_user_id": "093f75808b8089ba1f6dc000c7cac...", "session_name": "SessionUserName", "assumed_by": { "user": { "domain": { "name": "IAMDomainB", "id": "0659ef9c9c80d4560f14c009ac..." }, "name": "IAMUserB", "password_expires_at": "2020-02-16T02:44:57.000000Z", "id": "0659ef9d4d00d3b81f26c009fe..." } } } }
Códigos de estado
| Código de estado | Descripción |
|---|---|
| 201 | La solicitud se ha realizado correctamente. |
| 400 | Parámetros no válidos. |
| 401 | Error de autenticación. |
| 403 | Acceso denegado. |
| 405 | El método especificado en la solicitud no está permitido para el recurso solicitado. |
| 413 | La entidad solicitada es demasiado grande. |
| 500 | Error de servidor interno. |
| 503 | Servicio no disponible. |
Códigos de error
Ninguno