O login da porta no segundo fator - §164.312(d)

FeatureSecurityService
Navios
3 de agosto de 2026 às 04:31 UTC
Autor
Kamo
Enviar
e5efc19

Completa o MFA. O núcleo aterrou na biblioteca de kamo-shared; este é o fio que gira configuração armazenada em um portão real. O portão é pequeno porque o login já tinha a forma certa: cria o *** sessão e entregá-lo ao cliente APENAS como uma chave única no corpo de resposta — não cookie está definido no login. Então o mecanismo inteiro é reter o OTK até que o o segundo fator está comprovado. Uma sessão para a qual ninguém tem um OTK é inacessível, que significa que a própria criação da sessão não precisava de nenhuma cirurgia. MfaChallengeService mantém o ***Id sob um token de 5 minutos opaco, de uso único. O cliente nunca recebe o ID da sessão, e o token é inútil sem Código. Curto de propósito: um estado meio-autenticado sobrevive a um compromisso de senha. POST /api/security/mfa/desafio completa o login, lançando o OTK para que o O cliente retoma exactamente o fluxo que teria tido sem o MFA. Um código errado Não liberta nada e — deliberadamente — NÃO queima o desafio, porque forçar um usuário de volta através da senha sobre um erro de digitação é como MFA é desligado. A O próprio bloqueio da matrícula conta essas falhas. Um sucesso consome o desafio assim Não pode ser reproduzido. Códigos de recuperação completá-lo também, e nunca são tentados como um TOTP. Os endpoints de inscrição (/inscrição, /confirmação, /status) requerem uma sessão — se inscrever fator é uma ação autenticada por conta própria. /desafio deliberadamente faz não, porque o seu chamador é mid-login por definição. INERT HOJE: o portão só dispara em tem confirmadoFactor, e ninguém está matriculado, então o caminho de login existente é bytes idênticos. Este é o ponto — isto pode ser utilizado antes que qualquer cliente o apoie. A catraca do endpoint apanhou os meus próprios três manipuladores de matrícula como desprotegidos. Eles são. guardada, através de um usuárioIdFromSession helper a varredura de um método profundo não pode seguir, Assim, a solução era ensinar GUARD que ajudante em vez de baseá-los. Eu também. documentou a limitação inversa o mesmo exercício exposto: completo Desafio limpa a digitalização apenas porque acontece tocar no kSessionService.

Todas as alterações

Como o que vês no transporte?

Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.

Começar Livre Para SempreVer Preços