Module
Module 2 of 5Lesson 2 of 3~17 min

Passwords and account recovery

Lesson 2 of the module "Knowing who signs in" in the course "Design authentication and permissions for a product".

Lesson objective

By the end of this lesson, you will be able to write password rules that comply with current recommendations (NIST SP 800-63B-4 and the CNIL, France's data protection authority), specify a forgotten-password journey that does not reveal which accounts exist, and spot the flaws in account recovery journeys.

Where it fits

Knowing who signs in

How do you verify users' identity, keep their session and give them access back without opening a security hole?

Lessons in this module

  1. Authentication, authorization and sessions
  2. Passwords and account recovery (this lesson)
  3. Two-factor authentication and passkeys

What you will learn in the course

This lesson is part of the course Design authentication and permissions for a product

  • Distinguish authentication, authorization and session, and specify session durations, sign-out and access revocation.
  • Specify password rules and account recovery journeys following current recommendations (NIST SP 800-63B-4, CNIL, OWASP).
  • Choose strong authentication factors (TOTP app, passkeys), plan their rollout and specify the fallback journeys.
  • Specify delegated sign-in (OpenID Connect, social login) and enterprise SSO (SAML, OIDC, SCIM provisioning) for a B2B product.
  • Design a permission model (roles, attributes, scope) as a roles × actions matrix, enforced on the server side according to least privilege.
  • Specify isolation between customers, invitations, the audit log, support access and account deletion.
  • Specify your product's complete sign-in journeys, with states and errors, and choose between building and using an authentication provider.