Overview of Keystone 5 Passport Authentication Flows
The @keystonejs/auth-passport package supports three primary authentication flows for integrating third-party services (e.g., Google, Twitter, Facebook, GitHub):
- Single-Step Account Creation & Authentication: The default flow. If the service provides sufficient information (like name and email), a Keystone account is created and the user is authenticated immediately.
- Multi-Step Account Creation & Authentication: Used when additional information (e.g., age or email confirmation) is required. The process pauses after the service callback to gather extra data via a form before completing account creation.
- Existing Account Authentication: If a user already exists with a matching ID in the configured
idField, they are authenticated without creating a new account.