AuthentificationFacteurs

Nœuds : MFA TOTP

Enrôlement et vérification TOTP (RFC 6238), plus les nœuds transverses de choix/politique MFA, dans le cadre d’un graphe d’authentification.

Graphe d'exemple : vérification TOTP avec repli sur un code de récupération Graphe d'exemple : vérification TOTP avec repli sur un code de récupération
Exemple : après le mot de passe, l’utilisateur saisit son code TOTP (1) ; en cas d’échec, il peut utiliser un code de récupération (2).

TotpVerifierNode : vérifie un code TOTP avec tolérance de dérive d’horloge.

Faites défiler le tableau
PropriétéTypeDéfaut
secretSourcestringldap
secretStateKeystringclé du TotpSecretGeneratorNode
secretAttributeNamestring (obligatoire)oathDeviceProfiles
digitsint6
periodint30
stepsInWindowint1
algorithmstringHmacSHA1
retryLimitint3

Outcomes : true / false / exceeded.

TotpSecretGeneratorNode : génère le secret TOTP et l’URI otpauth:// (première étape de l’enrôlement).

Faites défiler le tableau
PropriétéTypeDéfaut
issuerstringTOSIAM
secretByteLengthint20
digitsint6
periodint30
algorithmstringHmacSHA1
secretStateKeystringENROLLMENT_SECRET_KEY

Outcome : outcome.

TotpEnrollCommitNode : persiste le secret en LDAP après vérification réussie, génère les codes de récupération.

Faites défiler le tableau
PropriétéTypeDéfaut
secretAttributeNamestringoathDeviceProfiles
secretStateKeystringclé du générateur
recoveryCodesStateKeystringRECOVERY_CODES_KEY

Outcome : outcome.

TotpQrCodeDisplayNode : envoie l’URI otpauth:// à l’UI via un HiddenValueCallback (id totpEnrollmentUri) pour affichage du QR code.

Faites défiler le tableau
PropriétéTypeDéfaut
uriStateKeystringclé du générateur

Outcome : outcome.

TotpRecoveryCodesDisplayNode : affiche les codes de récupération puis les efface du shared state.

Faites défiler le tableau
PropriétéTypeDéfaut
recoveryCodesStateKeystringclé du TotpEnrollCommitNode

Outcome : outcome.

RecoveryCodeVerifyNode : vérifie un code de récupération à usage unique, distingue un code invalide d’un code déjà consommé.

Faites défiler le tableau
PropriétéTypeDéfaut
attributeNamestringoathDeviceProfiles

Outcomes : true / false / consumed.

MfaEnrollmentCheckNode : nœud silencieux qui vérifie l’enrôlement MFA et écrit SS_ENROLLED_METHODS pour MfaChoiceNode.

Faites défiler le tableau
PropriétéTypeDéfaut
methodsToCheckstring (liste séparée par virgules)totp,sms,email,passkey

Outcomes : enrolled / notEnrolled.

MfaChoiceNode : présente un ChoiceCallback, intersecte les méthodes activées avec celles réellement enrôlées, et route automatiquement si une seule méthode est disponible.

Faites défiler le tableau
PropriétéTypeDéfaut
enabledMethodsstringtotp,sms,email,passkey
promptstringChoisissez votre méthode de vérification

Outcomes : totp / sms / email / passkey / push.

MfaPolicyDecisionNode : décide si le MFA est requis selon l’IP (CIDR), les groupes de l’utilisateur, ou une décision par défaut.

Faites défiler le tableau
PropriétéTypeDéfaut
exemptCidrsstring (liste de CIDR)""
exemptGroupsstring (liste de groupes)""
defaultDecisionstringrequired

Outcomes : required / optional / exempt.

Mis à jour le