Versionv1

Logout

  1. Limpar o cookie do cliente Intastellar na sua origem — chame Intastellar.accounts.signout(). O cliente no navegador da Intastellar remove, no estado atual, o cookie inta_account (first-party na origem do seu site). Carregue antes o script / namespace global de contas Intastellar e chame a API de forma defensiva (por exemplo Intastellar?.accounts?.signout?.()).
  2. Limpar a sessão da sua aplicação — apague ou invalide o seu cookie de sessão do app (por exemplo HttpOnly) e o registro no servidor. A etapa do SDK não substitui a sessão própria no backend ou BFF.
  3. Logout no IdP / SSO (opcional, recomendado para desmontar o SSO por completo) — se a integração usar URL de end-session ou logout no host de identidade, redirecione o usuário com os parâmetros do guia (id_token_hint, post_logout_redirect_uri, client_id, etc.) para limpar cookies SSO no domínio de identidade da Intastellar.
  4. URL de retorno — após o logout, leve o usuário a uma página pública do site.

Sem a etapa 3 (quando há dependência de SSO no domínio de identidade), o usuário pode manter sessão no IdP e receber SSO silencioso no próximo redirect authorize, mesmo após remover inta_account.

Erros comuns no authorize

error (típico)Significado
invalid_requestParâmetro ausente ou inválido (ex.: redirect_uri ruim).
unauthorized_clientCliente não permitido para este fluxo ou escopo.
access_deniedUsuário cancelou ou bloqueou o consentimento.
invalid_scopeEscopo solicitado não permitido para o cliente.

Sempre mostre uma mensagem segura ao usuário e registre error_description no servidor para suporte.

Erros comuns no token

errorSignificado
invalid_grantCódigo expirado, já usado ou incompatibilidade de redirect_uri / PKCE.
invalid_clientclient_id / client_secret incorretos.
invalid_requestCorpo malformado ou campo ausente.

Authorization codes costumam ser uso único e de curta duração. Se o usuário enviar o callback duas vezes ou você repetir com o mesmo código, espere invalid_grant.

SDK React (popup)

  • Popup bloqueado — o SDK abre nova janela; navegadores podem bloquear. Permita popups para sua origem ou use fluxo sem window.open se o produto suportar.
  • logout vs signout global — o logout do hook encerra a sessão do cliente no seu app; a API subjacente é Intastellar.accounts.signout(), que remove o cookie inta_account na sua origem.
  • Ainda “logado” após o portal ou limpeza de cookies — cookies de terceiros ou sessão no IdP podem fazer getUsers() retornar usuário até end-session / logout no IdP ou limpeza adicional; remover só inta_account nem sempre limpa o host de identidade. Veja Sessões, cookies e tokens.

Checklist de solução de problemas

  • URI de redirecionamento coincide exatamente com o valor registrado (esquema, host, caminho, sem query extra).
  • state coincide com o valor guardado para esta tentativa.
  • PKCE: mesmo code_verifier que produziu o code_challenge enviado.
  • Diferença de relógio: horário do servidor correto para validação JWT exp.
  • CORS: chamadas ao endpoint de token a partir do navegador costumam falhar por desenho — use seu backend.

Para o caminho feliz completo, veja Fluxo authorization code.

Last updated