Autenticación
Las solicitudes para invocar a una API se pueden autenticar mediante cualquiera de los siguientes métodos:
- Autenticación basada en tokens: las solicitudes se autentican mediante un token.
- Autenticación basada en AK/SK: Las solicitudes se autentican cifrando el cuerpo de la solicitud usando un par AK/SK. Se recomienda la autenticación mediante AK/SK porque es más segura que la autenticación mediante tokens.
Autenticación basada en tokens
El período de validez de un token es de 24 horas. Cuando utilice un token para la autenticación, guarde en caché para evitar invocar con frecuencia a la API de IAM utilizada para obtener un token de usuario.
Un token especifica los permisos temporales en un sistema informático. Durante la autenticación de API mediante un token, el token se agrega a las solicitudes para obtener permisos para invocar a la API.
Al invocar a una API para obtener un token de usuario, debe establecer auth.scope en el cuerpo de la solicitud para project.
{ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } } }
En Hacer una solicitud de API, se describe el proceso de invocar a la API utilizada para obtener un token de usuario.
Después de obtener un token, el campo de encabezado X-Auth-Token debe agregarse a las solicitudes para especificar el token al invocar a otras API. Por ejemplo, si el token es ABCDEFJ...., X-Auth-Token: ABCDEFJ.... se puede agregar a una solicitud de la siguiente manera:
1 2 3 |
POST https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json X-Auth-Token: ABCDEFJ.... |
Autenticación basada en AK/SK
La autenticación basada en AK/SK admite solicitudes de API con un cuerpo de no más de 12 MB. Para las solicitudes de API con un cuerpo más grande, se recomienda la autenticación basada en tokens.
En la autenticación basada en AK/SK, AK/SK se utiliza para firmar solicitudes y la firma se añade a continuación a las solicitudes de autenticación.
- AK: ID de clave de acceso, que es un identificador único asociado con una clave de acceso secreta y se usa junto con una clave de acceso secreta para firmar solicitudes criptográficamente.
- SK: clave de acceso secreta usada junto con un AK para firmar solicitudes criptográficamente. Identifica un remitente de la solicitud y evita que la solicitud sea modificada.
El SDK de firma solo se utiliza para firmar solicitudes y es diferente de los SDK proporcionados por los servicios.