--- layout: default title: Arquiteura --- 

Topico 2

Keycloak – Autenticação e Autorização 

O Keycloak é utilizado como solução de gestão de identidades e acessos na plataforma DevTest. Este componente é responsável pela autenticação dos utilizadores, bem como pela gestão de permissões e papéis (roles), garantindo que cada utilizador apenas acede às funcionalidades para as quais está autorizado. 

A integração com o API Gateway e com o backend permite que todos os pedidos sejam validados com base em tokens de segurança, assegurando um modelo de autenticação consistente e centralizado. Desta forma, a DevTest beneficia de um elevado nível de segurança, ao mesmo tempo que mantém flexibilidade para evoluir o modelo de permissões conforme as necessidades do projeto. 

Processo de Autenticação 

O processo de autenticação segue o fluxo padrão de redirecionamento do Keycloak, baseado em OpenID Connect (OIDC): 

O utilizador acede à interface gráfica da plataforma DevTest. 

Caso não exista uma sessão válida, o utilizador é automaticamente redirecionado para o servidor Keycloak. 

O utilizador autentica‑se através das credenciais configuradas (por exemplo, username e password). 

Após uma autenticação bem‑sucedida, o Keycloak devolve ao frontend um Access Token (JWT), bem como informação adicional de sessão. 

A interface gráfica armazena a sessão de forma segura e utiliza o Access Token para autenticar todos os pedidos subsequentes enviados ao backend