Fala pessoal!
Vocês já sabem que temos uma squad focada em evoluir nossa arquitetura com foco em escalabilidade, elasticidade e alta disponibilidade, certo? Para alcançar isso, inevitavelmente a gente precisa falar de microsserviços, e quando falamos de microsserviços precisamos falar de autenticação centralizada.
Então, um dos assuntos que estamos tratando é justamente esse: um servidor de identidade centralizada, permitindo que qualquer microsserviço da solução possa delegar essa responsabilidade.
A nossa abordagem inicial era avaliar e adotar alguma solução de identidade de mercado, e a gente até avaliou algumas, entre elas: WSO2-IS, Keycloak e o IdentityServer4. Mas, durante a execução percebemos que o importante mesmo não era escolher um produto, mas sim escolher e padronizar o jeito de conversar com estes produtos.
Felizmente os servidores de identidade conversam através de protocolos de mercado, portanto avaliamos estes protocolos e tomamos a decisão de adotar o formato OpenID Connect como padrão de comunicação entre qualquer microsserviço Benner com servidores de identidade.
O OpenID Connect, ou simplesmente OIDC é um incremento ao OAuth2 e funciona sobre o protocolo HTTP, logo, estamos em casa =)
Como não poderia ser diferente, o nosso glorioso WES está em processo de evolução para suportar o OIDC. Veja:
- O WES já é capaz de receber as credenciais de usuário na tela de login e terceirizar a autenticação para um servidor de identidade, via OIDC
- O WES já é capaz de solicitar dados do usuário no servidor de identidade – via OIDC – e inserir ou atualizar o cadastro do usuário no sistema Benner
- Estamos trabalhando nesse momento para suportar Single Sign-On de usuários, via OIDC. Ou seja, o usuário já autenticado entra direto no sistema sem ter que informar suas credenciais novamente
- E na sequência iremos tratar do Single Sign-On de APIs, via OIDC
E agora você já sabe, né? Quando for construir um microsserviço, não precisa implementar uma solução de autenticação, basta utilizar o OIDC para terceirizar esse assunto com um servidor de identidade de mercado.
Estamos aqui para apoiar e sanar qualquer dúvida, vamos conversar!
Ou ainda, se você quer ser protagonista desta revolução, ou se você tem alguém para indicar, estamos contratando!
De uma forma ou de outra, vamos construir o futuro juntos =)
Até a próxima!