Conceitos

Identidade Soberana

No PROST-QS, identidade não é apenas autenticação. É a base de toda governança e auditoria do sistema.

Princípio Central

Uma conta global, vínculos locais por app.

Usuários têm uma identidade única no kernel, mas podem ter perfis e permissões diferentes em cada aplicação vinculada.

Camadas de Identidade

Global Identity

Conta única no kernel com email verificado

App Binding

Vínculo específico entre usuário e aplicação

Credentials

App Key + Secret para autenticação de apps

Fluxo de Autenticação

1
Usuário faz login no kernel (email + senha)
2
Kernel retorna JWT com claims globais
3
App solicita vínculo com o usuário
4
Kernel adiciona claims específicos do app
5
Usuário acessa recursos do app com permissões locais

Credenciais de Aplicação

App Keypk_live_xxxxxxxxxxxxx
App Secretsk_live_xxxxxxxxxxxxx

⚠️ Importante: O App Secret nunca deve ser exposto no frontend. Use apenas no backend da sua aplicação.

Exemplo de Integração

// Backend: Autenticar com credenciais
const prostqs = new ProstQS({
  appKey: process.env.PROSTQS_APP_KEY,
  appSecret: process.env.PROSTQS_APP_SECRET
});

// Verificar token do usuário
const user = await prostqs.identity.verify(token);

// Vincular usuário ao app
await prostqs.identity.linkApp(user.id, {
  role: "member",
  metadata: { department: "sales" }
});