OAuth 2.0: Componentes e Fluxo 2

Compartilhado por um usuário do Flashcards.gg · gerado com IA · Denunciar este conjunto

Estudo sobre os componentes, tokens e fluxos do protocolo de autorização OAuth 2.0, voltado para desenvolvedores e estudantes de segurança.

52 cartões Português Nível: Ensino superior Segurança da informação Publicado
Toque no cartão para virar

Cartões · 52

OAuth 2.0
Framework de autorização que permite a uma aplicação acessar recursos em nome de um usuário sem compartilhar credenciais.
Resource Owner (Dono do Recurso)
A entidade capaz de conceder acesso a um recurso protegido, geralmente o próprio usuário final.
Client (Cliente)
Aplicação que solicita acesso a recursos protegidos em nome do Resource Owner e com sua autorização.
Resource Server (Servidor de Recursos)
Servidor que hospeda os recursos protegidos e responde a requisições com tokens de acesso válidos.
Authorization Server (Servidor de Autorização)
Servidor responsável por autenticar o Resource Owner e emitir tokens de acesso após obter autorização.
Access Token (Token de Acesso)
Credencial emitida pelo Authorization Server usada pelo cliente para acessar recursos protegidos.
Refresh Token (Token de Atualização)
Credencial usada para obter um novo Access Token quando o atual expira, sem exigir nova autenticação.
Authorization Grant (Concessão de Autorização)
Credencial que representa o consentimento do dono do recurso, trocada pelo cliente por um Access Token.
Scope (Escopo)
Parâmetro que define e restringe o nível e o alcance do acesso concedido ao cliente.
Client ID
Identificador público exclusivo atribuído à aplicação cliente pelo Authorization Server.
Client Secret
Chave secreta compartilhada entre a aplicação cliente e o Authorization Server, usada para autenticar o cliente.
Confidential Client (Cliente Confidencial)
Aplicação capaz de manter suas credenciais em sigilo com segurança, como aplicações executadas no backend.
Public Client (Cliente Público)
Aplicação incapaz de proteger segredos de cliente, como SPAs em navegadores e apps móveis nativos.
Redirection URI (Redirect URI)
Endereço pré-registrado para onde o Authorization Server redireciona o usuário com o código ou token.
Authorization Code Grant
Fluxo seguro no qual o cliente obtém um código temporário via redirecionamento e o troca por tokens no backend.
Implicit Grant
Fluxo legado projetado para navegadores onde o Access Token é retornado diretamente na URL, hoje desaconselhado.
Resource Owner Password Credentials Grant
Fluxo onde o usuário entrega usuário e senha diretamente ao cliente, recomendado apenas para apps legadas e confiáveis.
Client Credentials Grant
Fluxo usado para comunicação direta máquina para máquina (M2M), onde o próprio cliente é o dono do recurso.
PKCE (Proof Key for Code Exchange)
Extensão do Authorization Code que protege clientes públicos contra interceptação de código sem exigir segredo fixo.
Code Verifier (PKCE)
Sequência criptográfica aleatória de alta entropia gerada localmente pelo cliente antes de iniciar o fluxo.
Code Challenge (PKCE)
Versão transformada (geralmente via SHA-256) do Code Verifier, enviada na requisição inicial de autorização.
State Parameter
Valor opaco enviado na requisição de autorização para prevenir ataques de Cross-Site Request Forgery (CSRF).
Bearer Token
Tipo de token cujo portador tem acesso total ao recurso, exigindo proteção estrita de transporte via HTTPS.
Authorization Endpoint
Endpoint do Servidor de Autorização onde o usuário interage para autenticar e conceder permissões.
Token Endpoint
Endpoint do Servidor de Autorização onde o cliente troca concessões (como códigos) por tokens de acesso.
Token Revocation Endpoint
Endpoint que permite ao cliente invalidar deliberadamente um token de acesso ou refresh token já emitido.
Token Introspection
Mecanismo (RFC 7662) que permite ao Resource Server consultar o status e metadados de um token opaco.
JWT (JSON Web Token)
Formato autocontido e assinado frequentemente usado como Access Token, dispensando consultas ao banco a cada requisição.
Opaque Token (Token Opaco)
Token sem significado interno legível pelo cliente, exigindo validação direta com o Authorization Server.
Device Authorization Grant (Device Flow)
Fluxo projetado para dispositivos com entrada limitada ou sem navegador, como Smart TVs e consoles.
User Code (Device Flow)
Código curto exibido pelo dispositivo para que o usuário o digite em um navegador secundário.
Response Type: code
Parâmetro que indica a intenção de iniciar o fluxo de Authorization Code solicitando um código temporário.
Response Type: token
Parâmetro do fluxo Implicit que indica a solicitação direta de um Access Token no redirecionamento.
Grant Type: authorization_code
Valor enviado ao Token Endpoint informando que um código de autorização será fornecido para troca.
Grant Type: refresh_token
Valor enviado ao Token Endpoint para renovar credenciais expiradas usando um Refresh Token existente.
Grant Type: client_credentials
Valor enviado ao Token Endpoint quando o backend autentica com suas próprias credenciais para obter acesso.
HTTP Authorization Header: Bearer
Forma padrão recomendada de enviar o token de acesso na requisição HTTP usando o cabeçalho Authorization.
Tempo de Vida do Access Token
Intervalo curto de validade (minutos ou horas) adotado para minimizar riscos em caso de vazamento.
Tempo de Vida do Refresh Token
Intervalo mais longo de validade (dias ou meses) usado para obter novos tokens sem deslogar o usuário.
Refresh Token Rotation
Prática de segurança onde um novo Refresh Token é emitido a cada renovação, invalidando o anterior.
Consent Screen (Tela de Consentimento)
Interface onde o Resource Owner aprova explicitamente os escopos que o cliente solicita acessar.
Papel do HTTPS no OAuth 2.0
Garante a confidencialidade e integridade dos tokens em trânsito, sendo obrigatório na especificação.
OpenID Connect (OIDC)
Camada de identidade e autenticação construída sobre o OAuth 2.0 que introduz o ID Token.
Diferença entre OAuth 2.0 e OIDC
OAuth 2.0 trata de autorização (o que fazer); OIDC trata de autenticação e identidade (quem você é).
ID Token (OIDC)
Token em formato JWT contendo informações da identidade e do perfil autenticado do usuário.
Mutual-TLS (mTLS) no OAuth 2.0
Técnica que vincula tokens a um certificado de cliente específico, impedindo o uso por terceiros.
DPoP (Demonstrating Proof-of-Possession)
Mecanismo na camada de aplicação para vincular tokens a uma chave privada pertencente ao cliente.
Front-Channel
Canal de comunicação que trafega dados através do navegador do usuário, considerado menos seguro.
Back-Channel
Canal de comunicação direta entre servidores via chamadas HTTP seguras, inacessível ao usuário final.
Error: invalid_grant
Erro retornado quando o código de autorização ou refresh token fornecido é inválido, expirado ou revogado.
Error: invalid_client
Erro emitido quando a autenticação do cliente falha, seja por Client ID incorreto ou segredo inválido.
Error: unauthorized_client
Erro disparado quando o cliente autenticado não tem permissão para usar o grant type requisitado.