Integracao de Login Unificado
Guia para integrar outras aplicacoes ao cadastro centralizado de usuarios do gateway.
Objetivo
O gateway centraliza login e senha para que as aplicacoes consumidoras nao armazenem credenciais de usuario.
Cada aplicacao deve autenticar usuarios pelo gateway e validar tokens antes de liberar sessoes ou operacoes protegidas.
Endpoints
POST /api/users: cadastro administrativo protegido por x-admin-api-key.
PATCH /api/users/:userId: edicao administrativa de nome, e-mail, senha e status ativo.
POST /api/users/login: exige x-app-id e Authorization: Bearer APP_SECRET, autentica e-mail/senha e retorna um token JWT vinculado ao app.
GET /api/users/me: exige x-app-id, x-app-authorization: Bearer APP_SECRET e Authorization: Bearer USER_ACCESS_TOKEN para validar o perfil autenticado.
Modelo seguro de integracao
As aplicacoes consumidoras nao devem salvar senha nem hash. Elas devem enviar credenciais somente para /api/users/login via HTTPS.
Antes de usar o login unificado, crie uma aplicacao em POST /api/apps e guarde o app_secret somente no backend dessa aplicacao.
O token de usuario retornado fica vinculado ao app_id autenticado. Outra aplicacao nao consegue validar esse token sem as credenciais do mesmo app.
O token retornado deve ser tratado como segredo, armazenado em cookie seguro ou sessao backend quando possivel, e validado em /api/users/me junto com as credenciais do app.
Swagger
A especificacao interativa dos endpoints esta disponivel em /docs.
O JSON OpenAPI esta disponivel em /docs-json.