Texto e documentos
Números e cálculo
Dados e formatos
Segurança
Desenvolvimento e DevOps
Inteligência Artificial
Finanças
Saúde & Bem-estar
Produtividade
Jogos & Entretenimento
Multimédia e design
Empresa
Guia de utilização
O que mostra

Cada fluxo é desenhado como um diagrama de sequência: os atores (utilizador, cliente, servidores) são colunas e as mensagens, setas no tempo. Carrega em Play ou ⏭ para o percorreres passo a passo.

Edita-o

Muda o client_id, redirect_uri, scope, credenciais, etc. e o diagrama regenera-se. Clica em qualquer seta para inspecionar o pedido HTTP real e a sua explicação.

Fluxos

Basic (utilizador:palavra-passe em Base64), Bearer/JWT, Authorization Code, Code + PKCE (o recomendado hoje), Implicit (legado), Client Credentials (máquina a máquina), Device Code (TVs/CLI) e Refresh Token (renovar sem re-login).

Exportar e descodificar

Em qualquer passo com pedido HTTP podes copiá-lo como comando curl para o reproduzires no teu terminal. Se o passo levar um JWT, abre-o no descodificador JWT para inspecionares o seu header e payload.

Ataques e MITM

Ativa um ataque para veres um ator Atacante e os passos maliciosos (a vermelho). Cada fluxo traz os seus: sniffing de credenciais, alg:none, interceção do código sem PKCE, PKCE com plain, CSRF por falta de state, mix-up, refresh token roubado, DPoP roubado, phishing de código de dispositivo, AiTM ou token passthrough em MCP. Ativa a mitigação e o ataque é neutralizado (a verde), mostrando porque falha. Os ataques ao próprio JWT (kid, jwk, typ…) estão no Laboratório de fluxos de autenticação.

Comparar

No separador Comparar escolhes um fluxo de cada lado (ou um par predefinido) e são desenhados ao mesmo tempo. Os passos equivalentes alinham-se na mesma linha (mesmo /authorize, mesmo /token…) para que a diferença salte à vista, e um resumo lista que parâmetros e atores cada um adiciona. Clica em qualquer seta para a inspecionares.

Ferramentas

O separador Ferramentas reúne utilitários práticos de OAuth, todos no navegador: gerar e verificar pares PKCE (S256), construir um URL /authorize pronto a copiar, analisar um URL de callback (extrai code/state ou os tokens do fragmento e deteta erros), auditar um pedido /authorize face à RFC 9700 e auditar os metadados do servidor (openid-configuration): que defesas anuncia e quais lhe faltam.

Fluxos de autenticaçãoBasic, JWT e OAuth2 passo a passo
Fluxos de autenticaçãoVisualiza e edita Basic, Bearer/JWT e OAuth2 passo a passo
Ataque:Ataques ao próprio JWT (alg, kid, typ…) →
Parâmetros
Passo 1 de 9 Carrega em "Iniciar sessão"
Utilizador / NavegadorCliente (App)Servidor de autorizaçãoServidor de recursos (API)Carrega em "Iniciar sessão"302 → /authorizeGET /authorize (login + consentimento)302 → redirect_uri?code&stateGET /callback?code&statePOST /token200 { access_token, id_token, refresh_token }GET /api + Authorization: Bearer200 OK
Passo 1Carrega em "Iniciar sessão"

O utilizador inicia o login na aplicação cliente.