Todo caminho de entrada, resolvido
Senhas, provedores, passwordless e MFA atrás de uma chamada do SDK — com as configurações, limites e registros de usuário que um produto de verdade precisa desde o primeiro dia
Users
Everyone who has an identity in this project.
| User | Status | Created | Last sign in |
|---|---|---|---|
| ALAda Lovelace[email protected] | Active | 4 months ago | 2 minutes ago |
| GHGrace Hopper[email protected] | Active | 3 months ago | 18 minutes ago |
| ATAlan Turing[email protected] | Active | 2 months ago | 3 hours ago |
| KJKatherine Johnson[email protected] | Not confirmed | 6 days ago | never |
| RPRadia Perlman[email protected] | Banned | 1 year ago | 9 days ago |
Formas de entrar
Login social
Ligue métodos por ambiente. O cliente reconhece sem redeploy, e o usuário mantém uma identidade só em todos eles
Provedores são por ambiente — o cliente lê em runtime, então ligar Apple é configuração, não release
E-mail e senha
Política de senha, checagem de vazamento e fluxo de reset, com hashing que você nunca precisa escolher
Provedores sociais
Google, GitHub, Apple e os demais, configurados por ambiente
Passwordless
Magic links e códigos de uso único por e-mail ou SMS
Multifator
TOTP e códigos de recuperação, obrigatórios no geral ou por papel
Modo sudo
Eleve uma única ação com um nonce de uso único, em vez da sessão inteira
Sessões
Dispositivo, localização e método registrados em cada sessão, revogáveis uma a uma
Proteção
As partes que você normalmente adiciona depois do primeiro incidente, já inclusas
Rate limits
Por endpoint, por identificador, por ambiente — com os contadores visíveis
Proteção contra bots
Desafie cadastro e login sem você mesmo colocar um captcha
Controle de cadastro
Allowlists, domínios bloqueados, projetos por convite e waitlist
Detecção de vazamento
Senhas comprovadamente vazadas recusadas no momento em que são definidas
Ada LovelaceActive
usr_4c81f0a2 · [email protected]
Abra um usuário e as sessões estão lá: dispositivo, cidade, nível de garantia e quais fatores ele tem
O registro do usuário
Uma tabela de verdade, não um blob opaco. Busque, filtre, abra um usuário e veja tudo ligado a ele
Requests
Every call the platform served, as it happened.
| Time | Method | Status | Source | Path | Message |
|---|---|---|---|---|---|
| 12:04:11.204 | POST | 200 | gateway | /auth/signin | session issued |
| 12:04:10.881 | GET | 200 | gateway | /.well-known/jwks.json | cached |
| 12:04:09.117 | POST | 401 | gateway | /auth/signin | invalid credentials |
| 12:04:08.640 | POST | 200 | oauth | /oauth/token | authorization_code exchanged |
| 12:04:07.019 | POST | 429 | gateway | /auth/signin | rate limit exceeded |
| 12:04:05.552 | POST | 502 | functions | /functions/webhook-relay | upstream unavailable |
| 12:04:04.238 | GET | 200 | gateway | /auth/session | session verified |
| 12:04:02.907 | POST | 202 | notifications | /notifications/send | email queued · email-otp-verification |
Toda tentativa de login cai na mesma trilha de requisições, com o motivo da falha junto
Busca e filtro
Por e-mail, provedor, status ou metadados, em milhões de linhas
Identidades vinculadas
Um usuário, todos os provedores com que ele já entrou
Metadados
Metadados da aplicação que você controla e do usuário que ele controla, separados
Suspender e banir
Corte o acesso na hora sem apagar o histórico por trás
Perguntar de novo, na hora que importa
Sessão válida não é a mesma coisa que intenção. O modo sudo põe uma checagem nova na frente das ações que doem — e a mesma checagem fica disponível para as ações que o seu produto considera perigosas
Ações protegidas
MFA, credenciais, permissões, identidades, sessões e senhas, cada uma ligada ou desligada
Suas próprias ações
Proteja qualquer coisa na sua API pelo SDK — apagar uma chave, criar um repasse, exportar dados
Timeout
Uma confirmação eleva a sessão por uma janela que você define, e depois expira sozinha
Nonce de uso único
Ou autorize exatamente uma chamada, sem elevar a sessão inteira
Qualquer fator
TOTP, código por e-mail ou SMS — o que o usuário de fato tiver
Visível na sessão
O estado de sudo e sua expiração ficam na sessão, ao lado de dispositivo e local
Sudo Mode
An extra layer of confirmation in front of sensitive actions.
Confirm your access
Or send the code by SMS. After confirming, protected actions run without asking again until the timeout expires.
Você escolhe quais ações exigem uma confirmação nova, e quanto tempo uma confirmação vale
Uma chamada para entrar, uma para verificar
O SDK devolve um resultado discriminado em vez de lançar exceção, então o caminho de erro é algo que você trata, não algo que você captura.
const { data: verified } = await nulvless.auth.verify({
resource: "proj_16tbwq34",
roles: ["owner", "admin"],
});Uma plataforma, desde o primeiro usuário
Foque no seu produto. A infraestrutura de identidade é com a gente
O que você teria construído
Seis áreas, e cada uma delas é um projeto por si só.
- Autenticaçãosenhas, provedores, MFA, sessões
- AutorizaçãoRBAC, escopos, grants por recurso
- OAuth serverdiscovery OIDC, JWKS, PKCE
- Edge functionsruntime Deno, deploys, rollback
- Notificaçõestemplates, provedores, logs de entrega
- Observabilidademonitoramento, auditoria, consulta