Documento de descoberta OIDC

A conexão OpenID suporta um protocolo de descoberta que contém informações que podem ser usadas para configurar seus aplicativos e autenticar usuários, como tokens e chaves públicas.

Chamando o terminal

É possível obter o documento de descoberta e as informações que ele contém chamando o terminal .well-known.

Onde posso localizar o terminal?

É possível localizar o terminal na URL a seguir:

https://<region>.appid.cloud.ibm.com/oauth/v4/<tenantID>/.well-known/openid-configuration

Saiba mais sobre as regiões disponíveis.

Como chamar o terminal?

Para chamar o endpoint, você deve ter um ID de locatário válido e deve codificar o URI do documento de descoberta no código do aplicativo.

Consulte a seguinte solicitação de cURL de amostra:

curl -X GET "https://<region>.appid.cloud.ibm.com/oauth/v4/<tenantID>/.well-known/openid-configuration" -H "accept: application/json"

O que posso esperar que a chamada retorne?

A resposta retornada é semelhante ao exemplo a seguir:

{
  "issuer": "https://us-south.appid.cloud.ibm.com/oauth/v4/39a37f57-a227-4bfe-a044-93b6e6060b61",
  "authorization_endpoint": "https://us-south.appid.cloud.ibm.com/oauth/v4/39a37f57-a227-4bfe-a044-93b6e6060b61/authorization",
  "token_endpoint": "https://us-south.appid.cloud.ibm.com/oauth/v4/39a37f57-a227-4bfe-a044-93b6e6060b61/token",
  "jwks_uri": "https://us-south.appid.cloud.ibm.com/oauth/v4/39a37f57-a227-4bfe-a044-93b6e6060b61/publickeys",
  "subject_types_supported": [
    "public"
  ],
  "id_token_signing_alg_values_supported": [
    "RS256"
  ],
  "userinfo_endpoint": "https://us-south.appid.cloud.ibm.com/oauth/v4/39a37f57-a227-4bfe-a044-93b6e6060b61/userinfo",
  "scopes_supported": [
    "openid"
  ],
  "response_types_supported": [
    "code"
  ],
  "claims_supported": [
    "iss",
    "aud",
    "exp",
    "tenant",
    "iat",
    "sub",
    "nonce",
    "amr",
    "oauth_client"
  ],
  "grant_types_supported": [
    "authorization_code",
    "password",
    "refresh_token",
    "client_credentials",
    "urn:ietf:params:oauth:grant-type:jwt-bearer"
  ],
  "profiles_endpoint": "https://us-south.appid.cloud.ibm.com",
  "management_endpoint": "https://us-south.appid.cloud.ibm.com/management/v4/39a37f57-a227-4bfe-a044-93b6e6060b61",
  "service_documentation": "https://cloud.ibm.com/docs/appid?topic=appid-getting-started"
}
As descrições dos componentes
Componente Descrição
issuer O local do provedor OIDC.
authorization_endpoint A URL do terminal de autorização do OAuth 2.0 do App ID.
token_endpoint A URL do terminal do token do OAuth 2.0 do App ID.
jwks_uri A URL do documento do conjunto de chaves da web do App ID.
subject_types_supported Uma matriz JSON que contém uma lista dos tipos de identificadores de assunto que o App ID suporta.
id_token_signing_alg_values_supported Uma matriz JSON que contém uma lista dos algoritmos de assinatura JWS que o servidor App ID suporta.
userinfo_endpoint A URL do terminal App ID /userinfo.
scopes_supported Uma matriz JSON que contém uma lista dos valores de escopo do OAuth 2.0 que o App ID suporta.
response_types_supported Uma matriz JSON que contém uma lista dos valores response_type do OAuth 2.0 que o App ID suporta.
claims_supported Uma matriz JSON que contém uma lista dos nomes de solicitações.
grant_types_supported Uma matriz JSON que contém uma lista dos valores do tipo de concessão OAuth 2.0 que são compatíveis.
profiles_endpoint A URL do terminal do perfil do usuário do App ID.