Existem muitas formas de fazer a segurança de nossas aplicações em java, o proprio spring security tem uma quantidade considerável de métodos que ajudam na criação dessa importante camada de nossas aplicações.
Nesse artigo pretendo abordar uma perspectiva pratica utilizando o Keycloak da redhat, uma ferramenta open source que nos fornesse features de segurança baseada em oauth2, mas espera, se eu disse que o proprio spring security me fornece essa segurança por que eu deveria utilizar uma outra ferramenta na minha aplicação?
A resposta como tudo na computação é um depende do contexto. Vamos imaginar um contexto de uma aplciação distribuida com vários micro serviços que se comunicam e trocam informações, nesse contexto manter um micro serviço que centraliza a autenticação de cada uma das chamadas se torna imprescindível, mas por que reinventar a roda criando esse serviço se eu tenho uma aplicação completamente pronta pra uso, confiável, e open source?

