Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Elastic Cloud Server/ Referência de API/ Exemplos de aplicação/ Obtenção de um token e verificação do período de validade do token
Atualizado em 2022-11-08 GMT+08:00

Obtenção de um token e verificação do período de validade do token

Cenários

O período de validade de um token é de 24 horas. Depois de obter um token, armazene-o para evitar chamadas frequentes de API. O token original permanecerá válido até expirar, independentemente de um novo token ter sido obtido. Certifique-se de que o token é válido quando você usá-lo. Usar um token que expirará em breve pode causar falhas de chamada de API.

Esta seção descreve como obter um token e verificar seu período de validade para resolver as falhas de chamada da API causadas pela expiração do token.

Se o token estiver prestes a expirar (Não é possível concluir uma chamada de API ou um conjunto de chamadas de API), você precisa obter um novo token para evitar que a chamada seja interrompida devido à expiração do token.

Obtenção de um token

Você precisa obter um token para autenticação antes de chamar uma API. O valor X-Auth-Token no cabeçalho da solicitação é o valor do token.

O seguinte é um exemplo para mostrar como obter o token da região CN-Hong Kong.

  • URI de solicitação: POST https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens
  • Cabeçalho da solicitação: Content-Type=application/json
  • Solicitar corpo da mensagem:
    {
        "auth": {
            "identity": {
                "methods": [
                    "password"
                ],
                "password": {
                    "user": {
                        "name": "Enter a username",
                        "password": "Enter the password for login.",
                        "domain": {
                            "name": "Enter the account name."
                        }
                    }
                }
            },
            "scope": {
                "project": {
                    "name": "Enter a region name. In this example, the region is ap-southeast-1."
                }
            }
        }
    }

  • Para exibir o token obtido, clique no cabeçalho da resposta. O valor de x-subject-token é o token obtido. Mantenha o token seguro porque ele será usado no cabeçalho da solicitação para criar os ECS.
    General:
       Request URL: https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens
       Request Method: POST
       Status Code: 201
    Response Headers:
       cache-control: no-cache, no-store, must-revalidate
       connection: keep-alive
       content-length: 18401
       content-type: application/json; charset=UTF-8
       date: Thu, 27 May 2021 01:24:49 GMT
       expires: Thu, 01 Jan 1970 00:00:00 GMT
       pragma: no-cache
       server: api-gateway
       strict-transport-security: max-age=31536000; includeSubdomains;
       via: proxy A
       x-content-type-options: nosniff
       x-download-options: noopen
       x-frame-options: SAMEORIGIN
       x-iam-trace-id: token_ap-southeast-1_null_9bbec3983f3c7a5c146e709251760467
       x-request-id: d7796611318416bc8ffb2948a47fede8
       x-subject-token: MIISMAYJKoZIhvcNAQ...7xMUw==
       x-xss-protection: 1; mode=block;
  • O valor expires_at no corpo da resposta é o tempo de expiração do token.
    {
    	"token": {
    		"expires_at": "2021-05-28T01:24:49.905000Z",
            ...
    	}
    }

Verificando o Período de Validade do Token

Ao fazer uma chamada de API, o sistema verifica se o período de validade do token é longo o suficiente. Se o seu aplicativo tiver armazenado o token em cache, é recomendável que o token seja atualizado a cada 12 horas para garantir que ele tenha um período de validade longo o suficiente.

Você pode consultar o tempo de expiração de um token consultando Verificação de um token.

Segue-se um exemplo para mostrar como verificar o token da região CN-Hong Kong.

  • URI de solicitação: GET https://iam.ap-southeast-1.myhuaweicloud.com/v3/auth/tokens
  • Cabeçalho da solicitação:
    • Content-Type=application/json;charset=utf8
    • X-Auth-Token: Um token com permissões de Security Administrator é necessário se o administrador estiver solicitando a verificação do token de um usuário do IAM.

      O token do usuário (sem requisitos de permissão especiais) de um usuário do IAM é necessário se o usuário estiver solicitando a verificação de seu próprio token.

      Este exemplo usa o usuário do IAM e, portanto, o X-Auth-Token é o mesmo que o token a ser verificado

    • X-Subject-Token: Token a ser verificado.
  • O valor expires_at no corpo da resposta é o tempo de expiração do token.

    Se o token estiver prestes a expirar (Não é possível concluir uma chamada de API ou um conjunto de chamadas de API), você precisa obter um novo token para evitar que a chamada seja interrompida devido à expiração do token.

    {
    	"token": {
    		"expires_at": "2021-05-28T01:24:49.905000Z",
            ...
    	}
    }