Autenticação
As solicitações para chamar uma API podem ser autenticadas usando um dos seguintes métodos:
- Autenticação baseada em token: as solicitações são autenticadas usando um token.
- Autenticação AK/SK: as solicitações são criptografadas usando pares de AK/SK. A autenticação baseada em AK/SK é recomendada porque é mais segura do que a autenticação baseada em token.
Autenticação baseada em token
O período de validade de um token é de 24 horas. Ao usar um token para autenticação, armazene-o em cache para evitar chamadas frequentes à API do IAM usada para obter um token de usuário.
Um token especifica permissões temporárias em um sistema de computador. Durante a autenticação da API usando um token, o token é adicionado para solicitar cabeçalhos para obter permissões para chamar a API. Você pode obter um token chamando uma API.
- Para um serviço no nível do projeto, você precisa obter um token no nível do projeto. Ao chamar a API, defina auth.scope no corpo da solicitação para project.
- Para um serviço global, você precisa obter um token global. Ao chamar a API, defina auth.scope no corpo da solicitação como domain.
Ao chamar a API usada para obter um token de usuário, você deve definir auth.scope no corpo da solicitação como project.
{ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } } }
Depois que um token é obtido, o campo de cabeçalho X-Auth-Token deve ser adicionado às solicitações para especificar o token ao chamar outras APIs. Por exemplo, se o token for ABCDEFJ...., X-Auth-Token: ABCDEFJ.... pode ser adicionado a uma solicitação da seguinte forma:
POST https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/projects Content-Type: application/json X-Auth-Token: ABCDEFJ....
Autenticação baseada em AK/SK
A autenticação baseada em AK/SK suporta solicitações de API com um corpo não maior que 12 MB. Para solicitações de API com um corpo maior, a autenticação baseada em token é recomendada.
Na autenticação baseada em AK/SK, AK/SK é usada para assinar solicitações e a assinatura é então adicionada aos cabeçalhos da solicitação para autenticação.
- AK: o ID da chave de acesso, que é um identificador exclusivo usado em conjunto com uma chave de acesso secreta para assinar solicitações criptograficamente.
- SK: a chave de acesso secreta usada em conjunto com um AK para assinar solicitações criptograficamente. Ela identifica um remetente da solicitação e impede que a solicitação seja modificada.
O SDK de assinatura é usado apenas para solicitações de assinatura e é diferente dos SDKs fornecidos pelos serviços.