Autenticacao
O BeePass utiliza Supabase Auth com cookies SSR (Server-Side Rendering). A autenticacao e gerida automaticamente pelo navegador atraves de cookies HttpOnly.
Registo
Crie uma conta atraves da interface web ou da API Supabase Auth:
- E-mail: endereco de e-mail valido (verificado por ligacao)
- Palavra-passe: minimo 8 caracteres, 1 digito, 1 caracter especial
- Roles disponiveis:
eleveur(criador),testeur(testador),groupe_selection,research_center
As roles groupe_selection e research_center requerem validacao do administrador apos o registo.
Login
O login via Supabase Auth (signInWithPassword) configura automaticamente os cookies de sessao SSR. Nao e necessario nenhum header Authorization manual para chamadas a API a partir do navegador.
MFA (Autenticacao Multi-Fator)
Ao iniciar sessao a partir de um novo dispositivo, e enviado um codigo de 6 digitos por e-mail (via Brevo). O dispositivo e identificado por impressao digital (Canvas + User-Agent).
- Dispositivos reconhecidos nao ativam o MFA
- O codigo expira apos 10 minutos
- Maximo de 10 tentativas de verificacao por minuto
Sessoes
| Metodo | Rota | Descricao |
|---|---|---|
GET | /api/auth/sessions | Listar sessoes ativas |
DELETE | /api/auth/sessions | Revogar uma sessao (body: { session_id }) |
A revogacao remove o refresh token. O JWT atual permanece valido ate a data de expiracao (~1 hora).
Admin Auth
A autenticacao de administrador e independente da sessao do criador. Ambas coexistem em paralelo.
| Metodo | Rota | Descricao |
|---|---|---|
POST | /api/admin/auth/login | Login admin (configura cookie HMAC) |
GET | /api/admin/auth/session | Ler sessao admin |
POST | /api/admin/auth/logout | Logout admin (remove cookie) |
O cookie beepass-admin-token e um JWT assinado com HMAC (HS256), HttpOnly, Secure, SameSite=Strict, com um tempo de expiracao de 8 horas.
Pode estar autenticado simultaneamente como criador (cookie Supabase) e como administrador (cookie HMAC). Ambas as sessoes sao independentes.
Auditoria
| Metodo | Rota | Descricao |
|---|---|---|
POST | /api/auth/audit | Registar um evento de auditoria |
GET | /api/auth/audit | Historico de eventos de auditoria |
Os eventos de auditoria rastreiam tentativas de login, logout, revogacoes de sessao e acoes sensiveis.
Eliminar conta
| Metodo | Rota | Descricao |
|---|---|---|
DELETE | /api/auth/delete-account | Eliminar conta (verificacao MFA necessaria) |
Ver tambem: Visao geral | Rainhas | Avaliacoes