--- 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.