AUTH_REQUIRED=true na integração do produto quando as requisições devem ser recusadas caso o cliente Auth dele esteja indisponível ou mal configurado.
Dois serviços fazem o trabalho, e os produtos protegidos se conectam a eles no nível da rota:
- Auth cuida do lado ativo do acesso: emitir e renovar tokens, validar sessões, verificar permissões, tratar logout e informações do usuário, e executar desafios de MFA.
- Identity guarda os dados por trás dessas decisões: usuários, grupos, applications, provedores de comunicação, vínculos entre application e provedor, e configuração de MFA.
midaz-viewer-group consegue ler os dados do Midaz, mas não consegue alterá-los. Uma integração de serviço recebe acesso conforme o subject M2M efetivo dela. Por padrão, tokens que não são de usuário usam admin/<product>-editor-role. Defina AUTH_M2M_INVERSION_ENABLED=true para usar o sub do token da application.
Por que usar o Access Manager?
Use o Access Manager quando você quiser controle de acesso nativo e refinado nos produtos Lerian, em vez de montar algo produto a produto. Ele permite:
- gerenciar usuários humanos e os grupos de produto que definem o acesso deles
- criar applications máquina a máquina para integrações de serviço
- aplicar permissões até o nível do recurso e da ação, como
reports:get,templates:postouaccounts:patch - usar um único modelo de controle de acesso em cada produto Lerian que você roda
- manter as APIs dos produtos protegidas por bearer tokens e verificações no nível da rota.
- Em deploys SaaS, ele é a camada de acesso da plataforma. As claims do JWT carregam o subject autenticado e o contexto de tenant em que a plataforma se apoia.
- Em deploys BYOC multi-tenant, o contexto de tenant vem de claims confiáveis do token, nunca de payloads de requisição ou de headers arbitrários.
- Em deploys BYOC single-tenant, você pode já rodar seu próprio provedor de identidade. Mesmo assim, o Access Manager pode acrescentar autorização nativa da Lerian e credenciais de application onde você precisar desse controle.
Especificações técnicas
O que vem pronto:
- APIs REST para as operações do Auth e do Identity.
- Configurações do Lerian Console para a gestão visual de usuários e applications com suporte.
- Aplicação da autorização no nível do produto para APIs HTTP e gRPC protegidas.
- Configuração do cliente Auth por produto para a aplicação da autorização no nível da rota.
- Fluxos de token OAuth2/OIDC para acesso por senha e por client credentials.
- Suporte a MFA nos fluxos de autenticação de usuário.
- Cache em Valkey para operações de token, de permissão e relacionadas a MFA.
- RBAC alinhado aos recursos, ações, grupos e applications máquina a máquina do produto.
Bootstrap e operação
O Access Manager tem duas camadas de ciclo de vida distintas, e manter as duas separadas evita problemas depois:
O bootstrap é o que popula um ambiente recém-criado. Depois que esse ambiente sobe, ele deixa de ser o lugar onde você faz mudanças. Para o passo a passo do operador que deixa o Auth e o Identity prontos antes de qualquer produto aplicar o controle de acesso, veja Instalando o Access Manager.
Daí em diante, gerencie o acesso pelas APIs do Identity ou pelo Lerian Console. O Console cobre o trabalho diário com usuários e applications: criar usuários, atribuir grupos, atualizar senhas e criar applications máquina a máquina. As APIs do Identity dão a superfície operacional completa, incluindo provedores, vínculos entre application e provedor, e MFA.
Recursos, ações, papéis e conjuntos de permissões nativos são outra história. Entregue as mudanças neles por atualizações controladas da plataforma, como migrações ou um conciliador idempotente, e não edite os dados de seed do bootstrap para mudar o acesso em um ambiente que já está rodando.
Comportamento multi-tenant
Em deploys SaaS e BYOC multi-tenant, o tenant faz parte de quem é o chamador, e não é algo que ele envia. O Access Manager lê o tenant das claims confiáveis do JWT nos fluxos de usuário e da organização da application nos fluxos máquina a máquina. Os clientes nunca enviam a posse do tenant em payloads, query parameters ou headers. Isso molda o comportamento em três pontos:
- Gestão de identidade: as APIs de usuário, grupo e application retornam apenas registros da organização do tenant do chamador.
- Autenticação: os fluxos de senha e de refresh token mantêm o tratamento do token no escopo do tenant que o contexto do usuário carrega.
- Autorização: as verificações de permissão avaliam apenas os grupos, papéis e permissões de application que pertencem ao tenant resolvido.
Casos de uso
O Access Manager serve para cenários como:
- Times que querem autenticação e autorização nativas nos produtos Lerian.
- Organizações sem uma solução de IAM já existente.
- Times que já rodam um provedor de identidade mas ainda precisam de autorização no nível do produto.
- Integrações que dependem de acesso máquina a máquina seguro.
- Deploys com vários produtos que precisam de um modelo de acesso consistente para usuários, serviços e tenants.

