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
|
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
|
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
|
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
object |
Configurações de OpenID Connect. |
|
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
access_mode |
String |
Tipo de acesso. Opções:
|
|
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:
NOTA:
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:
|
|
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:
|
|
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.