In a SSPR nFactor configuration. You may observe error "KB Questions and Asnwers not registered" when login with LDAP password and can't move to the next AAA factor. Triggers are:
AAA.USER.ATTRIBUTE("kba_registered").EQ("0")
Root factor: Root_Start
Login Schema = SSPR_2FA_LoginSchema
Adv Authn Policy = Radius_Pol
Rule = true
Action = Radius_Act
Next Factor if Success = LDAP_Factor
Login Schema = noschema_LDAP // Inherit the password from previous factor with "password expression".
Adv Authn Policy = LDAP_Pol
Rule = true
Action = LDAP_Act // Has -KBAttribute defined to check if user has register KBA. Issue happens at this factor
Next Factor if Success = Check_for_KBA_Registration
Login Schema = LSCHEMA_INT
Adv Authn Policy = Check_KBA_Value_Pol
Rule = AAA.USER.ATTRIBUTE("kba_registered").EQ("0")
Action = NO_AUTHN
Next Factor if Success = Do_KBA_Register
// Skip...
Adv Authn Policy = Allow_Pol
Rule = true
Action = NO_AUTHN
Root factor: Root_Start Login Schema = SSPR_2FA_LoginSchema Adv Authn Policy = LDAP_Pol_NoAuthn_w_KBAttr Rule = true Action = LDAP_Act_NoAuthn_w_KBAttr // Uncheck "Authentication" and Define "KBAttribute" in LDAP action. Purpose is to check if user has registered KBA in advance. Next Factor if Success = Radius_Factor Login Schema = noschema_Radius // Inherit the passcode from previous factor with "password expression". Adv Authn Policy = Radius_Pol Rule = true Action = Radius_Act Next Factor if Success = LDAP_Factor Login Schema = noschema_LDAP // Inherit the password from previous factor with "password expression". Adv Authn Policy = LDAP_Pol Rule = true Action = LDAP_Act // Normal LDAP action without KBAttribute. Next Factor if Success = Check_for_KBA_Registration // Skip... same as before
This is by current design. NetScaler AAA treats the factor to do KBA validation when the following conditions match:
[NetScaler] Error "KB Questions and Answers not registered" with LDAP KBAttribute