Obtenção de um LoginToken
Função
Essa API é usada para obter um loginToken para fazer login por meio de um corretor de identidade personalizado. LoginTokens são emitidos para que os usuários façam login através de corretores de identidade personalizados. Cada loginToken contém informações de identidade e sessão de um usuário. Para fazer login em um console de serviço de nuvem usando um URL de agente de identidade personalizado, chame essa API para obter um loginToken para autenticação.
A API pode ser chamada usando o ponto de extremidade global e pontos de extremidade específicos da região. Para pontos de extremidade do IAM, consulte Regiões e pontos de extremidade.
![](https://support.huaweicloud.com/intl/pt-br/api-iam/public_sys-resources/note_3.0-pt-br.png)
Por padrão, um loginToken é válido por 10 minutos. Você pode definir um período de validade de 10 minutos a 12 horas.
URI
POST /v3.0/OS-AUTH/securitytoken/logintokens
Parâmetros de solicitação
Parâmetro |
Obrigatoriedade |
Tipo |
Descrição |
---|---|---|---|
Content-Type |
Sim |
String |
Preencha application/json;charset=utf8 neste campo. |
Parâmetro |
Obrigatoriedade |
Tipo |
Descrição |
---|---|---|---|
Sim |
Object |
Informações de autenticação. |
Parâmetro |
Obrigatoriedade |
Tipo |
Descrição |
---|---|---|---|
access |
Sim |
String |
O AK. |
secret |
Sim |
String |
SK. |
id |
Sim |
String |
SecurityToken temporário. Um loginToken pode ser obtido usando o securityToken de um usuário de agente de identidade personalizado ou de um usuário comum. Para mais detalhes, consulte Obtenção de uma chave de acesso temporária e SecurityToken através de um token. Um securityToken pode ser obtido usando uma agência, o parâmetro session_user.name deve ser especificado no corpo da solicitação. Para obter detalhes, consulte Obtenção de uma chave de acesso temporária e SecurityToken por meio de uma agência. |
duration_seconds |
Não |
Integer |
Período de validade (segundos) do loginToken. O valor varia de 10 minutos a 12 horas. O valor padrão é 10 minutos, ou seja, 600 segundos.
NOTA:
|
Parâmetros de resposta
Parâmetro |
Tipo |
Descrição |
---|---|---|
X-Subject-LoginToken |
String |
LoginToken assinado. |
Parâmetro |
Tipo |
Descrição |
---|---|---|
Object |
Informação LoginToken. |
Parâmetro |
Tipo |
Descrição |
---|---|---|
domain_id |
String |
ID da conta. |
expires_at |
String |
Hora em que o loginToken expirará. |
method |
String |
Método de autenticação. O valor é federation_proxy para um usuário de agente de identidade personalizado, token para um usuário comum da HUAWEI CLOUD. |
user_id |
String |
ID do usuário. |
user_name |
String |
Nome de usuário. |
session_id |
String |
ID da sessão. |
session_user_id |
String |
ID de um usuário de agente de identidade personalizado. |
session_name |
String |
Nome de um usuário de agente de identidade personalizado.
NOTA:
Este parâmetro será retornado quando você obtiver uma chave de acesso temporária e securityToken usando uma agência e especificar o parâmetro session_user.name no corpo da solicitação. O valor deste parâmetro é o valor de session_user.name. |
Object |
Informações sobre a parte delegada.
NOTA:
Este parâmetro será retornado quando você obtiver uma chave de acesso temporária e securityToken usando uma agência e especificar o parâmetro session_user.name no corpo da solicitação. |
Exemplo de solicitação
POST https://iam.myhuaweicloud.com/v3.0/OS-AUTH/securitytoken/logintokens
{ "auth": { "securitytoken": { "access": "LUJHNN4WB569PGAP...", "secret": "7qtrm2cku0XubixiVkBOcvMfpnu7H2mLN...", "id": "gQpjbi1ub3J0a...", "duration_seconds":"600" } } }
Exemplo de resposta
Código de status: 201
A solicitação foi bem-sucedida.
Exemplo 1: resposta ao pedido de obtenção de uma chave de acesso temporária e securityToken através de um token
Exemplo 2: resposta à solicitação de obtenção de uma chave de acesso temporária e securityToken através de uma agência (com session_user.name no corpo da solicitação)
- Exemplo 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..." } }
- Exemplo 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 status
Código de status |
Descrição |
---|---|
201 |
A solicitação foi bem-sucedida. |
400 |
Parâmetros inválidos. |
401 |
Autenticação falhou. |
403 |
Acesso negado. |
405 |
O método especificado na solicitação não é permitido para o recurso solicitado. |
413 |
A entidade de solicitação é muito grande. |
500 |
Erro de servidor interno. |
503 |
Serviço indisponível. |
Códigos de erro
Nenhum