BEFORE YOU BEGIN
Check before you begin
This guide describes inspected source behavior and open acceptance requirements; it does not establish production-enforced MFA, validated directory TLS or security acceptance for every sign-in path. Enablement and organizational cutover require controlled tests on a release with the gaps resolved.
Visual/action limit: no real LDAP or OTP screen was captured in this inspection; another workflow’s screenshot was not substituted. Content is based on local LDAP/signin/verify_otp/send_2fa_email source review. No bind, user import, password entry, OTP generation/email delivery or authentication-setting change was performed.
- Installed release and local/external sign-in path
- Tenant/parent and approved test account
- CA/TLS, credentials and protected logging
- Success, failure, exception and access-loss acceptance
011. Define the verification method and scope
The inspected local sign-in code implements email OTP generation/verification. TOTP/Authenticator, WebAuthn/passkeys and recovery codes were not verified here. Assess local, LDAP, special-admin and Keystone sign-in separately; enabled SMTP/SMS settings do not establish mandatory MFA for every account.
Expected resultIdentity flow and relevant acceptance results are recorded.
022. Validate email and SMTP prerequisites
Check an email address accessible to the test account and an authorized SMTP sender record. Assess port/SSL/STARTTLS together with actual CA/hostname validation. The inspected send_2fa_email helper has insecure_tls/debug_smtp defaults; disabling verification or logging SMTP dialogue is not a production recommendation. Keep passwords/app passwords out of the guide.
Expected resultIdentity flow and relevant acceptance results are recorded.
033. Validate the enablement condition against the release
In the normal local-sign-in branch, enabled SMTP or SMS settings trigger OTP generation; the inspected branch still calls send_2fa_email. An SMS record therefore does not establish verified SMS delivery. A per-user MFA toggle or organization-wide enforcement panel was not verified. Do not change production sign-in settings merely for testing.
Expected resultIdentity flow and relevant acceptance results are recorded.
044. Include code generation and expiry in the test plan
The source stores an email-keyed OTP in cache for 300 seconds and redirects to the MFA page. In an approved test verify access before code entry, delivery timing and expiry after the password stage. Separately accept regeneration/resend behavior and cache sharing across web workers in the installed release. This inspection did not trigger sign-in or send OTP email.
Expected resultIdentity flow and relevant acceptance results are recorded.
055. Validate correct, invalid and consumed-code behavior
The verify_otp branch logs in on a matching cached code and deletes it; invalid/expired codes return an error. Reuse, attempt limits, session binding and pre-verification access require controlled security acceptance; this source review did not validate all of them. Because the source copy contains OTP debug output, acceptance must use a release that does not log actual codes.
Expected resultIdentity flow and relevant acceptance results are recorded.
066. Review LDAP, administrator and external-login exceptions
The inspected special-admin and successful LDAP branches can return logged-in before OTP generation. Keystone authentication depends on its own validated identity flow. Email OTP acceptance does not establish these paths; if MFA is required for all accounts, close missing enforcement paths in the relevant release and retest before declaring readiness. No exception was added or removed here.
Expected resultIdentity flow and relevant acceptance results are recorded.
077. Document access-loss and operational acceptance
Plan behavior during email/SMTP/cache outages and an authorized emergency-access process. Do not assume recovery codes, automatic reset or admin-bypass features. Record identity type, release, expiry, invalid-attempt, exception and delivery results; do not disable password/2FA protection for testing. No account, SMTP or verification settings were changed here.
Expected resultIdentity flow and relevant acceptance results are recorded.
COMMON QUESTIONS
Does LDAP integration enforce MFA?
Not by itself. Directory bind, local/external sign-in, OTP enforcement and session access need separate acceptance; test every sign-in path.