Skip to content

adr-0018-papel-inicial-visitor

Toda nova conta deve iniciar com papel VISITOR, aprovado no ato da criacao.

Para qualquer fluxo de criacao de conta:

  • primaryRole = "VISITOR"
  • activeRole = "VISITOR"
  • roleAssignments inclui:
    • { roleId: "VISITOR", status: "APPROVED", lastActionDate: now }

No modelo person embutido:

  • person.roleAssignments inclui VISITOR com:
    • ministryId do tenant;
    • unitId (quando informado);
    • status = "APPROVED";
    • lastActionDate = now.

roleId deve ser restrito ao catálogo oficial compartilhado entre backend e frontend, incluindo VISITOR.


A regra vale para:

  1. criacao via email/senha;
  2. criacao via Google;
  3. auto registro (USER_SELF_REGISTER) no primeiro acesso.

  • Elimina contas novas sem papel inicial de dominio.
  • Reduz divergencia entre autenticação e perfil de negocio.
  • Padroniza a base para evolucao de solicitacao/aprovacao de papeis.
  • Exige manutencao sincronizada do catálogo de roleId entre backend e frontend.

  • ADR-0003: reforca RBAC com estado inicial consistente.
  • ADR-0005: preserva coerencia da entidade de usuario no dominio.
  • ADR-0012: mantem escopo por tenant (inetDomain) no bootstrap do perfil.
  • ADR-0013: complementa ciclo de vida com papel inicial definido.