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.
Atualizado em 2024-08-31 GMT+08:00

Consulta de um provedor de identidade do OpenID Connect

Função

Essa API é fornecida para que o administrador consulte um provedor de identidade do OpenID Connect.

A API pode ser chamada usando o ponto de extremidade global e pontos de extremidade da região específica. Para pontos de extremidade do IAM, consulte Regiões e pontos de extremidade.

URI

GET /v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config

Tabela 1 Parâmetros de URI

Parâmetro

Obrigatório

Tipo

Descrição

idp_id

Sim

String

ID do provedor de identidade.

Comprimento: 1 a 64 caracteres

Parâmetros de solicitação

Tabela 2 Parâmetros no cabeçalho da solicitação

Parâmetro

Obrigatório

Tipo

Descrição

Content-Type

Sim

String

Preencha application/json;charset=utf8 nesse campo.

X-Auth-Token

Sim

String

Token de acesso emitido para um usuário para suportar sua identidade e permissões.

Para obter detalhes sobre as permissões exigidas pelo token, consulte Ações.

Parâmetros de resposta

Código de status: 200

Tabela 3 Parâmetros no corpo da resposta

Parâmetro

Tipo

Descrição

openid_connect_config

object

Configurações de OpenID Connect.

Tabela 4 OpenIDConnectConfig

Parâmetro

Tipo

Descrição

access_mode

String

Tipo de acesso. Opções:

  • program_console: acesso programático e acesso ao console de gerenciamento.
  • program: apenas acesso programático.

idp_url

String

URL do provedor de identidade de OpenID Connect. Esse campo corresponde ao campo iss no token de ID.

client_id

String

ID de um cliente registrado com o provedor de identidade de OpenID Connect.

authorization_endpoint

String

Ponto de extremidade de autorização do provedor de identidade de OpenID Connect.

Esse campo é obrigatório somente se o tipo de acesso estiver definido como acesso programático e acesso ao console de gerenciamento.

scope

String

Escopos das solicitações de autorização.

Esse campo é obrigatório somente se o tipo de acesso estiver definido como acesso programático e acesso ao console de gerenciamento.

Valores enumerados:

  • openid
  • email
  • profile
NOTA:
  • openid deve ser especificado para este campo.
  • É possível especificar um máximo de 10 valores, que devem ser separados por espaços.

Exemplo: openid, openid email, openid profile e openid email profile.

response_type

String

Tipo de resposta.

Esse campo é obrigatório somente se o tipo de acesso estiver definido como acesso programático e acesso ao console de gerenciamento.

Valor enumerado:

  • id_token

response_mode

String

Modo de resposta.

Esse campo é obrigatório somente se o tipo de acesso estiver definido como acesso programático e acesso ao console de gerenciamento.

Valores enumerados:

  • fragment
  • form_post

signing_key

String

Chave pública usada para assinar o token de ID do provedor de identidade de OpenID Connect.

Exemplo de solicitação

Solicitação para consultar um provedor de identidade do OpenID Connect

GET https://{address}/v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config

Exemplo de resposta

Código de status: 200

A solicitação foi bem-sucedida.

{ 
  "openid_connect_config" : { 
    "access_mode" : "program_console", 
    "idp_url" : "https://accounts.example.com", 
    "client_id" : "client_id_example", 
    "authorization_endpoint" : "https://accounts.example.com/o/oauth2/v2/auth", 
    "scope" : "openid", 
    "response_type" : "id_token", 
    "response_mode" : "form_post", 
    "signing_key" : "{\"keys\":[{\"kty\":\"RSA\",\"e\":\"AQAB\",\"use\":\"sig\",\"n\":\"example\",\"kid\":\"kid_example\",\"alg\":\"RS256\"}]}" 
  } 
}

Código de status: 400

Parâmetros inválidos.

{ 
  "error_msg" : "Request body is invalid.", 
  "error_code" : "IAM.0011" 
}

Código de status: 401

Falha na autenticação.

{ 
  "error_msg" : "Request parameter %(key)s is invalid.", 
  "error_code" : "IAM.0007" 
}

Código de status: 403

Acesso negado.

{ 
  "error_msg" : "Policy doesn't allow %(actions)s to be performed.", 
  "error_code" : "IAM.0003" 
}

Código de status: 404

O recurso solicitado não pode ser encontrado.

{ 
  "error_msg" : "Could not find %(target)s: %(target_id)s.", 
  "error_code" : "IAM.0004" 
}

Código de status: 500

Erro do sistema interno.

{ 
  "error_msg" : "An unexpected error prevented the server from fulfilling your request.", 
  "error_code" : "IAM.0006" 
}

Códigos de status

Código de status

Descrição

200

A solicitação foi bem-sucedida.

400

Parâmetros inválidos.

401

Falha na autenticação.

403

Acesso negado.

404

O recurso solicitado não pode ser encontrado.

500

Erro do sistema interno.

Códigos de erro

Para obter detalhes, consulte Códigos de erro.