Pular para o conteúdo principal

Questão de Segurança da Informação — OpenID Connect — CESPE / CEBRASPE 2024

Segurança da InformaçãoOpenID Connect
Código
ce404096
Banca
CESPE / CEBRASPE
Órgão
TCE AC
Ano
2024
Cargo
TCE ( )
Julgue o item seguinte, relativo a métodos e protocolos de autenticação.   Um aplicativo cliente que realiza a autenticação de um usuário mediante um servidor de autorização que adota o OpenID Connect recebe de volta um token de acesso e um token de identidade com algumas informações adicionais do usuário, seguindo o fluxo de autenticação representado a seguir.Imagem associada para resolução da questão
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

OpenID Connect: ID Token e Access Token

Gabarito: C (Certo). A afirmação está correta: no OpenID Connect, o servidor de autorização retorna ao cliente tanto um token de acesso (access token) quanto um token de identidade (ID token), sendo este último um JWT que carrega informações adicionais do usuário autenticado, como nome, e-mail e identificador único. Essa é a essência da extensão do OAuth 2.0 que o OpenID Connect adiciona: autenticação sobre autorização. O OpenID Connect (OIDC) é uma camada de autenticação construída sobre o protocolo OAuth 2.0. Enquanto o OAuth 2.0 é um protocolo de autorização — que permite que um aplicativo acesse recursos protegidos em nome do usuário sem expor suas credenciais —, o OIDC adiciona a capacidade de autenticar o usuário, ou seja, confirmar quem ele é. Para isso, o OIDC introduz o ID Token, um token no formato JWT (JSON Web Token) que contém declarações (claims) sobre a identidade do usuário, como sub (identificador único), name, email, além de metadados da autenticação (como auth_time, acr, amr) e do próprio token (iss, aud, exp, iat, nonce). No fluxo típico do OIDC, o cliente (aplicação) redireciona o usuário para o servidor de autorização (Authorization Server), que autentica o usuário e, após o consentimento, retorna ao cliente um código de autorização (no Authorization Code Flow) ou diretamente os tokens. No caso do fluxo com código, o cliente troca o código por um access token e um ID token. O access token é usado para acessar recursos protegidos no servidor de recursos (Resource Server), enquanto o ID token é destinado ao cliente, que pode interpretá-lo diretamente para obter informações sobre o usuário autenticado.

É importante distinguir os dois tokens: o access token dá acesso a recursos protegidos e não deve ser interpretado pelo cliente — quem valida e interpreta é o servidor de recursos. Já o ID token é voltado apenas à identificação do usuário e é entregue ao cliente, que pode lê-lo diretamente. Essa distinção é fundamental e frequentemente cobrada em provas. A pegadinha que a banca explora neste tema é confundir os papéis dos tokens: afirmar que o access token contém informações do usuário (quando na verdade ele é opaco para o cliente) ou que o ID token serve para autorização (quando ele serve apenas para autenticação). Nesta questão, a afirmação está correta porque descreve exatamente o que o OIDC entrega: access token + ID token com informações adicionais do usuário. Guarde a fronteira entre autenticação (quem é o usuário — ID token) e autorização (o que ele pode acessar — access token): é exatamente nela que as alternativas se dividem.

OpenID Connect (OIDC)
  • 1Extensão do OAuth 2.0
    • OAuth 2.0 = autorização
    • OIDC = autenticação
  • 2Tokens retornados ao cliente
    • Access token
      • Acesso a recursos protegidos
      • Validado pelo servidor de recursos
    • ID token (JWT)
      • Identidade do usuário
      • Claims: sub, name, email
      • Interpretado pelo cliente
  • 3Fluxo típico
    • Cliente redireciona usuário
    • Servidor autentica
    • Retorna código de autorização
    • Cliente troca por tokens
LEVEL · soulevel.com.br

Item — ✅ CERTO

A afirmação está correta. O OpenID Connect, como extensão do OAuth 2.0, faz com que o servidor de autorização retorne ao cliente um access token (para acesso a recursos) e um ID token (JWT com informações do usuário autenticado). O ID token contém claims como sub, name, email, entre outras, que são as "informações adicionais do usuário" mencionadas no enunciado.

PEGA ESSA DICA!

Para questões sobre OIDC, lembre-se do par: OAuth 2.0 = autorização (access token); OIDC = autenticação (ID token). Se a questão mencionar "token de identidade" ou "ID token", está falando de OIDC. E lembre: o ID token é para o cliente interpretar; o access token é para o servidor de recursos validar.

Gabarito: C (Certo)

Link permanente: /questoes/ce404096