Pular para o conteúdo principal

Questão de Segurança da Informação — OpenID Connect — FCC 2024

Segurança da InformaçãoOpenID Connect
Código
fc147383
Banca
FCC
Órgão
SEAD PI
Ano
2024
Cargo
Ana Gov ( )
A principal extensão que o OpenID Connect faz ao OAulth 2.0 para permitir que usuários finais sejam autenticados é a estrutura de dados do Token de identificação (ID Token), O ID Token é um token de segurança que contém Declarações (Claims) sobre a Autenticação de um usuário final por um servidor de autorização ao usar um cliente, e potencialmente outras declarações solicitadas. O ID Token é representado como um
  1. ASimple Format Token (SET).
  2. BeXtensible Markup Token (XMT).
  3. COAuth Broker (OAB)
  4. DJSON Web Token (JWT)
  5. EBasic Unicode Token (BUT).
Revelar gabarito e comentário

GabaritoD — JSON Web Token (JWT)

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: o ID Token e sua estrutura

Gabarito: letra D. O ID Token, a principal extensão que o OpenID Connect adiciona ao OAuth 2.0 para autenticar usuários finais, é representado como um JSON Web Token (JWT) — um padrão aberto baseado em JSON para troca segura de informações entre partes. O JWT é assinado, podendo ser verificado pelo cliente, e contém as declarações (claims) sobre a autenticação do usuário.

O OpenID Connect (OIDC) é uma camada de identidade construída sobre o OAuth 2.0. Enquanto o OAuth 2.0 é um protocolo de autorização — permite que um aplicativo acesse recursos em nome do usuário sem expor credenciais —, o OIDC adiciona autenticação, ou seja, a capacidade de verificar quem é o usuário. Essa extensão introduz o ID Token, um token de segurança que carrega informações sobre a autenticação do usuário final, como nome, e-mail e um identificador único.

A estrutura do ID Token é definida como um JWT. O JWT é um formato de token leve e seguro, composto por três partes codificadas em Base64: o header (contém o tipo do token e o algoritmo de assinatura), o payload (contém as claims, como as informações do usuário) e a assinatura (garante a integridade e a autenticidade do token). Essa assinatura pode ser feita com um segredo compartilhado ou com criptografia de chave pública.

É importante distinguir o ID Token do Access Token. O Access Token é o principal token do OAuth 2.0, usado para acessar recursos protegidos no servidor de recursos. O cliente não deve interpretar seu conteúdo, apenas repassá-lo. Já o ID Token, específico do OpenID Connect, é voltado apenas à identificação do usuário e é entregue ao cliente, que pode interpretá-lo diretamente. Essa distinção é crucial para entender o papel de cada token no fluxo.

A banca explora a confusão entre os formatos de token e os protocolos. As alternativas incorretas apresentam siglas inventadas ou de outros contextos, tentando induzir o candidato a escolher uma opção que pareça técnica, mas que não corresponde à realidade do OpenID Connect. O conhecimento da estrutura do JWT e sua relação com o ID Token é o que garante a resposta correta.

Guarde a fronteira entre ID Token (JWT, identidade, interpretado pelo cliente) e Access Token (autorização, interpretado pelo servidor de recursos): é exatamente nela que as alternativas se dividem.

1Camada sobre OAuth 2.0
OAuth 2.0 = autorização
OIDC = autenticação
2ID Token
Formato: JSON Web Token (JWT)
Contém claims do usuário
Interpretado pelo cliente
3Access Token
Autorização
Não interpretado pelo cliente
OpenID Connect (OIDC)
LEVELsoulevel.com.br
OpenID Connect (OIDC): Camada sobre OAuth 2.0 (OAuth 2.0 = autorização, OIDC = autenticação); ID Token (Formato: JSON Web Token (JWT), Contém claims do usuário, Interpretado pelo cliente); Access Token (Autorização, Não interpretado pelo cliente)

Alternativa A — ❌ Incorreta

Simple Format Token (SET) é uma sigla inventada, sem correspondência com os padrões de autenticação e autorização. Não existe um formato de token chamado SET no contexto do OpenID Connect ou do OAuth 2.0. A banca cria siglas que parecem plausíveis para confundir o candidato.

Alternativa B — ❌ Incorreta

eXtensible Markup Token (XMT) também é uma sigla fictícia. Embora exista o XML (eXtensible Markup Language) e o SAML (Security Assertion Markup Language), que é um protocolo baseado em XML para troca de dados de autenticação, o ID Token do OpenID Connect não é representado em XML, mas sim em JSON. A alternativa mistura conceitos de protocolos diferentes.

Alternativa C — ❌ Incorreta

OAuth Broker (OAB) não é um formato de token. O OAuth é um protocolo de autorização, e "broker" não é um termo usado para descrever a estrutura de um token. O ID Token não é um "broker" do OAuth; ele é uma extensão que adiciona autenticação ao protocolo. A alternativa tenta confundir o papel do OAuth com a estrutura do token.

Alternativa D — ✅ Correta ⟵ GABARITO

O ID Token é representado como um JSON Web Token (JWT). O JWT é um padrão aberto baseado em JSON para troca segura de informações entre partes. Ele é composto por header, payload e assinatura, e é exatamente essa estrutura que o OpenID Connect utiliza para transmitir as claims sobre a autenticação do usuário. O cliente pode verificar a assinatura e interpretar o conteúdo do ID Token diretamente.

Alternativa E — ❌ Incorreta

Basic Unicode Token (BUT) é outra sigla inventada. Não existe um formato de token chamado BUT no contexto de autenticação e autorização. A alternativa tenta confundir com conceitos de codificação de caracteres (Unicode), que não têm relação com a estrutura do ID Token.

NÃO CAIA NESSA!

A banca cria siglas fictícias (SET, XMT, OAB, BUT) que parecem técnicas para induzir o candidato a escolher uma opção errada. A armadilha é confundir o candidato com termos que soam plausíveis, mas não existem. O conhecimento de que o ID Token é um JWT — e que o JWT é um padrão baseado em JSON — é o que destrava a questão. Com treino, você reconhece essas siglas inventadas de longe 💪.

PEGA ESSA DICA!

Para fixar, lembre-se da estrutura do JWT: Header.Payload.Signature. O ID Token é um JWT que contém claims sobre o usuário autenticado. Compare com o Access Token, que é usado para autorização e não deve ser interpretado pelo cliente. Essa distinção é recorrente em provas de segurança da informação.

Gabarito: letra D

Link permanente: /questoes/fc147383