Programadores · OpenID Connect
Integrar uma aplicação por OpenID Connect
O AuthGuard é um fornecedor OpenID Connect. A sua aplicação usa o fluxo de código de autorização e recebe um ID token assinado.
Endereços
| Item | Valor |
|---|---|
| Emissor | https://<anfitrião> |
| Descoberta | https://<anfitrião>/.well-known/openid-configuration |
| Chaves públicas (JWKS) | https://<anfitrião>/oauth2/jwks |
| Revogação | https://<anfitrião>/oauth2/revoke |
| Saída | https://<anfitrião>/oauth2/logout |
O documento de descoberta lista os endpoints de autorização, token e userinfo.
O fluxo
- Redirecione para o endpoint de autorização com
response_type=code, oclient_id, umredirect_uriregistado exatamente,scope=openid email profile,state,noncee PKCE (code_challenge_method=S256). - A pessoa confirma com a passkey (que assina esse pedido e só esse), com o telemóvel, ou com a sessão única.
- Troque o
codeno endpoint de token (o código vale 120 segundos e só uma vez). - Valide o ID token: assinatura (RS256 ou ES256) com o JWKS,
iss,aud,exp,nonce.
O acr indica o método: urn:authguard:acr:passkey:v1 ou urn:authguard:acr:device-approval:v1. email_verified só é true para endereços confirmados ou vindos de um diretório gerido.
Tokens de renovação, revogação e saída
- Com tokens de renovação ativos, cada renovação devolve um novo token que substitui o anterior; reutilizar um token antigo revoga toda a família. A renovação dura enquanto a sessão existir, no máximo 24 horas, e caduca após 15 minutos sem uso.
POST /oauth2/revokerevoga um token (RFC 7009).- Saída iniciada pela aplicação:
/oauth2/logout?id_token_hint=…&post_logout_redirect_uri=…&state=…. Semid_token_hint, nada é terminado. Não há saída por back-channel nem front-channel.
prompt=none
Funciona só com uma sessão única utilizável; caso contrário volta login_required.
Política
Cada entrada é avaliada pela ação federation.authorize com o recurso igual ao client_id; sem regra, a resposta é access_denied.
Códigos de erro deste artigo
Esta página ajudou?
Obrigado. A resposta fica guardada apenas neste browser; não enviamos nada.
Lamentamos. Experimente:
- pesquisar com o texto exato da mensagem ou o código de erro
- consultar o índice de códigos de erro
- falar com o administrador da sua organização