Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-07 GMT+08:00

Autenticación

Las solicitudes para llamar 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 AK/SK: Las solicitudes se cifran utilizando pares AK/SK. Se recomienda la autenticación basada en AK/SK porque es más segura que la autenticación basada en 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 llamar 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 los encabezados de solicitud para obtener permisos para llamar a la API. Puede obtener un token porllamar a una API.

Un servicio en la nube se puede implementar como un servicio a nivel de proyecto o como un servicio global.
  • Para un servicio a nivel de proyecto, necesita obtener un token a nivel de proyecto. Cuando llames a la API, configura auth.scope en el cuerpo de la solicitud para project.
  • Para un servicio global, necesita obtener un token global. Cuando llames a la API, configura auth.scope en el cuerpo de la solicitud para domain.

Cuando se llama a la API utilizada 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"
            }
        }
    }
}

Después de obtener un token, el campo de X-Auth-Token debe agregarse a las solicitudes para especificar el token al llamar a otras API. Por ejemplo, si el token es ABCDEFJ...., X-Auth-Token: ABCDEFJ.... se puede añadir a una solicitud de la siguiente manera:

POST https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/projects
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 cabeceras de solicitud para la autenticación.

  • AK: ID de clave de acceso, que es un identificador único utilizado 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.
En la autenticación basada en AK/SK, puede usar un AK/SK para firmar solicitudes basadas en el algoritmo de firma o usar el SDK de firma para firmar solicitudes. Para obtener más información sobre cómo firmar solicitudes y usar el SDK de firma, consulte Guía de firma de solicitudes de API.

El SDK de firma solo se utiliza para firmar solicitudes y es diferente de los SDK proporcionados por los servicios.