Autorização centralizada e plataforma de aplicações
Um único início de sessão, uma única gestão de utilizadores e permissões para todas as aplicações internas e de clientes da Atrea. Construímos uma plataforma central sobre Zitadel com início de sessão próprio, suporte multi-marca, permissões de granularidade fina e notificações.
- Client
- Atrea s.r.o
- Year
- 2026
- Technologies
TypeScript Node.js Express PostgreSQL TypeORM Zitadel OpenID Connect Next.js Vue.js Web Push Docker
Desafio
A Atrea opera várias aplicações Web para funcionários, parceiros de negócio e clientes. Até agora, cada uma delas geria o seu próprio início de sessão, utilizadores e permissões. Isto significava várias contas para a mesma pessoa, gestão de permissões fragmentada e lógica de acesso programada de novo todas as vezes.
O objetivo era criar uma plataforma comum que pudesse ser utilizada por qualquer aplicação nova ou existente, com início de sessão único, gestão centralizada de permissões e serviços partilhados, tais como notificações ou feedback dos utilizadores.
Solução
Início de sessão único (SSO)
Como fornecedor de identidade, escolhemos a plataforma IAM de código aberto Zitadel. No entanto, criámos os nossos próprios ecrãs de início de sessão (Next.js sobre Session API v2), pelo que o registo, a reposição de palavra-passe e a autenticação multifator (MFA) têm o aspeto e o comportamento exatamente pretendidos pela Atrea. Os funcionários iniciam sessão com a sua conta Microsoft empresarial, enquanto os utilizadores externos utilizam e-mail e palavra-passe.
Várias marcas numa única plataforma
Uma única instalação serve várias marcas e organizações. Cada marca tem o seu próprio design de início de sessão, domínio próprio, modelos de e-mail e servidor SMTP de envio. A marca é determinada centralmente com base na aplicação e no callback, pelo que o utilizador nunca se encontra no ambiente errado.
Permissões num único local
As aplicações já não calculam nada por si próprias, toda a lógica de permissões reside num serviço central:
- funções no âmbito de cada aplicação e atribuição automática de funções com base no domínio de e-mail,
- permissões binárias e hierárquicas (desativado / visualização / edição) numa estrutura em árvore,
- permissões para registos específicos (por exemplo, partilha de um único projeto com um colega),
- administradores de aplicações e superadministradores com registo de auditoria de todas as alterações.
As funções e permissões são inseridas diretamente no token de acesso (JWT) durante o início de sessão. Desta forma, o frontend sabe o que o utilizador deve ver sem consultas adicionais. Os backends de outras aplicações verificam as permissões com uma única chamada de API.
Serviços partilhados para todas as aplicações
- Notificações por e-mail e Web Push, com modelos para cada tipo de mensagem, envio em massa e definições de subscrição do utilizador.
- Multilinguismo com registo central de idiomas, idiomas de recurso e tradução automática de modelos.
- Feedback e suporte diretamente a partir das aplicações, incluindo anexos e notificações de alteração de estado.
- Perfis de utilizador e preferências partilhados entre aplicações.
Administração
Para os administradores, construímos um painel de administração em Vue 3. Este inclui utilizadores, funções e permissões, aplicações e respetivos clientes OIDC, marcas, definições de e-mail, modelos de notificação, suporte e auditoria. A plataforma inclui também documentação para programadores (VitePress) com uma versão adaptada para assistentes de IA, permitindo aos programadores ligar novas aplicações de forma rápida e uniforme.
Resultado
- Uma única conta para todas as aplicações da Atrea e SSO empresarial via Microsoft.
- Uma nova aplicação é ligada em poucos dias em vez de semanas de desenvolvimento de início de sessão e gestão de permissões próprios.
- Gestão de acessos num único local, incluindo o bloqueio imediato de um utilizador em toda a plataforma.
- Preparado para várias marcas e mercados graças ao suporte multi-marca e multi-idioma.
- A plataforma já serve as aplicações de produção da Atrea e as restantes estão a ser migradas gradualmente.
