Receba novidades do Hedhog no seu e-mail
Novos lançamentos, receitas e breaking changes — sem spam.

Submódulo Core
security
Expõe primitivas de segurança reutilizáveis consumidas por outros módulos.
Caminho de origem: libraries/core/src/security
Arquivo do módulo: security.module.ts
Introdução
O submódulo Security é um módulo utilitário interno que fornece primitivas criptográficas compartilhadas e abstrações de segurança consumidas por outros submódulos do Core. Ele não possui controller HTTP e não expõe endpoints públicos — existe inteiramente como um conjunto de services injetáveis do NestJS dos quais outros módulos dependem.
As operações de senha usam bcrypt com um fator de custo configurável. Todo o armazenamento e comparação de senhas em toda a plataforma — criação de usuários, redefinições de senha, alterações de senha no perfil — passa por um único PasswordService, garantindo uma única implementação auditável que pode ser atualizada em um só lugar quando os requisitos de segurança mudarem.
A assinatura JWT de access tokens, refresh tokens, tokens pendentes de MFA e tokens de acesso a arquivos usa um serviço de tokens centralizado que gerencia a consciência de rotação de secrets e impõe a seleção de algoritmo (RS256 ou HS256, dependendo da configuração da implantação). Isso evita a criação ad-hoc de tokens espalhada por módulos individuais e garante que todos os tokens sejam emitidos e verificados de forma consistente.
Os challenge tokens de curta duração usados na verificação de e-mail, nos fluxos de configuração de MFA e nas cerimônias WebAuthn são gerados e validados aqui. Um challenge token codifica um propósito (email-verify, totp-add, webauthn-register), um payload, um timestamp de expiração e uma assinatura HMAC. O vínculo de propósito impede que um challenge token seja reutilizado entre fluxos diferentes, mesmo que o valor bruto seja capturado por um atacante.
Os payloads dos tokens de acesso a arquivos são criptografados usando criptografia simétrica do módulo Security. O serviço de criptografia é consumido pela geração de URLs assinadas e pelos endpoints de descriptografia do submódulo File, mantendo os detalhes de implementação criptográfica isolados da lógica de negócio do submódulo File.
As operações WebAuthn — verificação de attestation durante o registro e verificação de assertion durante o login ou o MFA — são tratadas por um WebAuthn service que encapsula a complexidade da cerimônia por trás de uma interface simples. Todos os services do Security são registrados no container de injeção de dependências do NestJS e exportados a partir do SecurityModule, de modo que os consumidores declaram uma simples injeção por construtor sem acessar as primitivas criptográficas diretamente.
Endpoints HTTP
Nenhum endpoint de controller dedicado encontrado para este submódulo.
Ferramentas MCP
Nenhuma ferramenta MCP mapeada para este submódulo.