MVP2 — Operação e endurecimento
Pós-go-live do MVP1. Controla provisionamento e defaults por ambiente, sem mapeamento de groups/claims (MVP4).
Nota (pós-MVP3): endpoints legados (
signin-azure,azure:true) foram removidos no MVP3. As seções M2-03/M2-04 abaixo descrevem o histórico da migração; não se aplicam mais ao código atual.
Funcionalidades ativas
| ID | Funcionalidade | Variável |
|---|---|---|
| M2-01 | Rejeitar usuário desconhecido no external-login |
ECOSIF_AUTH_AUTO_PROVISION=false → HTTP 404 |
| M2-02 | Tenant, role e validade do usuário auto-criado por deploy | ECOSIF_AUTH_DEFAULT_*, ECOSIF_AUTH_DEFAULT_EXPIRY_* |
M2-01 — Sem auto-provisionamento
Com ECOSIF_AUTH_AUTO_PROVISION=false:
- Token externo continua validado (JWKS, iss, aud, exp).
- Se
gr_usernão tiver registro para ousername/emaildo token → 404 Not Found. - Administrador deve cadastrar o usuário antes do primeiro login SSO.
ECOSIF_AUTH_AUTO_PROVISION=false
M2-02 — Defaults de provisionamento (quando AUTO_PROVISION=true)
| Variável | Default | Uso |
|---|---|---|
ECOSIF_AUTH_DEFAULT_TENANT |
TEMP_TENANT |
Tenant do novo usuário |
ECOSIF_AUTH_DEFAULT_ROLE |
STAFF |
Role inicial |
ECOSIF_AUTH_DEFAULT_CREATED_BY |
AZURE_AD |
Campo created_by |
ECOSIF_AUTH_DEFAULT_EXPIRY_TYPE |
A |
Tipo de expiração |
ECOSIF_AUTH_DEFAULT_EXPIRY_YEARS |
1 |
Validade em anos |
Histórico — migração legado (MVP1 → MVP3)
| Fase | Comportamento |
|---|---|
| MVP1 | signin-azure e azure:true ativos com header Deprecation |
| MVP2 | Flags ECOSIF_AUTH_ENABLE_LEGACY_* para desligar (410 Gone) + métricas Prometheus |
| MVP3 | Código legado removido; usar apenas external-login |
Exemplo .env MVP2 (produção)
ECOSIF_AUTH_AUTO_PROVISION=false
ECOSIF_AUTH_DEFAULT_TENANT=EMPRESA_X
ECOSIF_AUTH_DEFAULT_ROLE=STAFF
ECOSIF_JWT_SUBJECT_CLAIM=username
Referências
- ../dev/autenticacao_unificada_mvp.md
- external-login-api.md
- ../dev/mvp3_flexibilidade.md
- Proposta:
.internal_docs/proposta-completa-autenticacao.mdseção 15