Logotipo Hedhog

Receba novidades do Hedhog no seu e-mail

Novos lançamentos, receitas e breaking changes — sem spam.

Voltar para os módulos CoreIntegrado no CoreModule
Captura de tela do módulo auth

Submódulo Core

auth

Lida com autenticação, tokens de sessão, MFA e recuperação de senha.

Caminho de origem: libraries/core/src/auth

Arquivo do módulo: auth.module.ts

Introdução

O submódulo Auth gerencia todas as fases do ciclo de vida da identidade do usuário: troca de credenciais, emissão de tokens de sessão, desafios de autenticação multifator, recuperação de senha e encerramento de sessão. É o ponto de entrada para toda a autenticação voltada ao usuário e o guardião de todo recurso protegido na plataforma.

O login retorna um JWT access token de curta duração usado no cabeçalho Authorization: Bearer para endpoints protegidos e, opcionalmente, um refresh token de longa duração. O refresh token pode ser trocado por um novo par access/refresh sem nova autenticação, permitindo continuidade de sessão transparente entre sessões de navegador e aplicativos móveis. O logout invalida o refresh token no servidor, garantindo que a sessão termine mesmo que o access token ainda não tenha expirado naturalmente.

O HedHog oferece três canais de MFA. O TOTP funciona com qualquer aplicativo autenticador compatível com os padrões (Google Authenticator, Authy, 1Password). O OTP por e-mail envia um código de seis dígitos para o endereço de e-mail verificado do usuário. O WebAuthn usa a Web Authentication API para aproveitar chaves de segurança em hardware, Face ID, Touch ID ou Windows Hello. Quando o MFA está habilitado, o fluxo de login padrão responde com um mfaToken pendente em vez de uma sessão completa — o cliente precisa enviar o código correto pelo endpoint de verificação correspondente para receber o access token final. Os códigos de recuperação servem como backup quando o dispositivo de MFA principal está indisponível.

O fluxo de esqueci-a-senha tem duas etapas: um código de uso único e com prazo limitado é enviado ao e-mail cadastrado (POST /auth/forgot), e esse código é então enviado junto com a nova senha (POST /auth/forgot-reset). A cerimônia de asserção WebAuthn segue o mesmo modelo de duas etapas — gerar as opções e, em seguida, verificar a resposta assinada pelo autenticador.

O autocadastro via POST /auth/signup está disponível para plataformas de registro aberto. Para implantações somente por convite ou provisionadas por administradores, esse endpoint pode ser restringido por permissões em nível de rota sem alterar o código.

Endpoints HTTP

15 endpoints

Verifica se o access token atual é válido e retorna o usuário autenticado.

Retorna a lista de roles disponíveis para o usuário autenticado.

Autentica com e-mail e senha; retorna access e refresh tokens.

Body

FieldTypeRequiredNotes
emailstringyesValid email address
passwordstringyesStrong password
refreshTokenbooleannoRequest a refresh token in response

Troca um refresh token por um novo par de access/refresh tokens.

Body

FieldTypeRequiredNotes
refreshTokenstringyesValid refresh token

Registra uma nova conta de usuário.

Body

FieldTypeRequiredNotes
namestringyes
emailstringyesValid email address
passwordstringyesStrong password

Invalida o refresh token informado, encerrando a sessão.

Body

FieldTypeRequiredNotes
refreshTokenstringyes

Inicia o fluxo de redefinição de senha enviando um código de redefinição para o e-mail do usuário.

Body

FieldTypeRequiredNotes
emailstringyesValid email address

Conclui a redefinição de senha usando o código recebido por e-mail.

Body

FieldTypeRequiredNotes
codestringyesReset code received by email
passwordstringyesMin 8 chars

Verifica um código de login por e-mail durante a autenticação multifator.

Body

FieldTypeRequiredNotes
tokenstringyesPending login token
codestringyesPin code from email

Reenvia o código de verificação por e-mail para um login pendente.

Body

FieldTypeRequiredNotes
tokenstringyesPending login token

Verifica um código MFA de uso único (TOTP ou e-mail) para concluir o login.

Body

FieldTypeRequiredNotes
tokenstringyesJWT pending login token
codestringyes
methodType"totp" | "email" | "recovery"no

Conclui o login usando um código de recuperação quando o método MFA principal está indisponível.

Body

FieldTypeRequiredNotes
tokenstringyesJWT pending login token
codestringyesRecovery code

Reenvia o código MFA para um desafio de autenticação pendente.

Body

FieldTypeRequiredNotes
tokenstringyesJWT pending login token

Gera as opções de asserção WebAuthn para verificação de MFA baseada em passkey.

Body

FieldTypeRequiredNotes
mfaTokenstringyesJWT pending MFA token

Verifica uma resposta de asserção WebAuthn e conclui a autenticação por passkey.

Body

FieldTypeRequiredNotes
mfaTokenstringyesJWT pending MFA token
assertionResponseobjectyesWebAuthn assertion from the browser

Ferramentas MCP

Nenhuma ferramenta MCP mapeada para este submódulo.