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.

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

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).

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.

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.

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.

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é.

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.

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.

PropriétéTypeDéfaut
enabledMethodsstringtotp,sms,email,passkey
promptstringChoisissez votre méthode de vérification

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

Notes
La valeur par défaut de enabledMethods n’inclut pas push, bien que ce soit un outcome valide du nœud — il faut l’ajouter explicitement à la propriété pour l’activer.

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

PropriétéTypeDéfaut
exemptCidrsstring (liste de CIDR)""
exemptGroupsstring (liste de groupes)""
defaultDecisionstringrequired

Outcomes : required / optional / exempt.

Modifier cette page sur GitHub