Questão nº 55
Questão de Tecnologia da Informação · FCC TRT-1 2025 (nº 55)
Um Tribunal Regional do Trabalho deseja implementar um sistema de autenticação centralizado para seus diversos aplicativos internos e externos. Decidiu, para isso, utilizar o Keycloak como Identity Provider (IdP) e configurar a autenticação e autorização dos usuários por meio do OAuth2. Durante a implementação, a equipe de segurança precisa garantir que os fluxos de autenticação estejam corretamente configurados e que os aplicativos tenham acesso seguro aos recursos protegidos. Nesse cenário,
- Ao Keycloak pode atuar como um Authorization Server dentro do fluxo OAuth2, permitindo a emissão de tokens de acesso e refresh tokens para aplicações cliente. (alternativa correta)
- Bo Keycloak apenas suporta OAuth2 para autenticação federada, sendo necessário utilizar um provedor externo como o Azure AD ou Google Identity para permitir login unificado.
- Cno OAuth2, ao utilizar Keycloak como IdP, o fluxo de Implicit Grant deve ser sempre a opção preferida para aplicações web modernas, pois é o mais seguro e recomendado atualmente.
- Daplicações cliente que precisam acessar APIs protegidas devem utilizar o Authorization Code Lazy (ACL) combinado com Proof Authority for Code Exchange (PACE) para aumentar a segurança na troca de tokens.
- Eo protocolo OAuth2, implementado no Keycloak, permite a geração de Access Tokens e ID Tokens, mas não suporta Refresh Tokens para renovação de sessão.
Resposta comentada
Gabarito Alternativa A
O Keycloak é um servidor de identidade de código aberto que atua como um "porteiro" para seus aplicativos, gerenciando quem pode acessar o quê e emitindo credenciais seguras.
(A) Correta: O Keycloak é projetado para funcionar como um Authorization Server no OAuth2, sendo responsável por autenticar usuários e emitir tokens de acesso (para acessar recursos) e refresh tokens (para renovar sessões sem nova autenticação).
(B) Incorreta: O Keycloak não apenas suporta OAuth2 para autenticação federada; ele é um Identity Provider completo por si só, podendo gerenciar usuários e autenticá-los diretamente, além de poder federar com outros provedores.
(C) Incorreta: O fluxo Implicit Grant é depreciado e não é o mais seguro ou recomendado para aplicações web modernas devido a riscos de vazamento de tokens. O fluxo Authorization Code Grant com PKCE é o preferido atualmente. (Armadilha: A banca tenta confundir com um fluxo antigo que já foi popular, mas hoje é considerado inseguro).
(D) Incorreta: "Authorization Code Lazy (ACL)" e "Proof Authority for Code Exchange (PACE)" não são termos padrões do OAuth2. O fluxo correto e seguro é o Authorization Code Grant combinado com Proof Key for Code Exchange (PKCE).
(E) Incorreta: O Keycloak, como um Authorization Server completo, suporta a emissão de Refresh Tokens, que são essenciais para a renovação de Access Tokens e manutenção da sessão do usuário sem exigir uma nova autenticação.
Fonte: FCC TRT-1 2025 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 004). Reproduzida para fins de estudo.