docs/en/modules/account/passkey.md
The Web Authentication API (WebAuthn) passkeys feature allows users to authenticate using passkeys, which are more secure and user-friendly alternatives to traditional passwords. Passkeys leverage public key cryptography to provide strong authentication without the need for users to remember complex passwords.
You can enable/disable the Web Authentication API (WebAuthn) passkeys feature in the Setting > Account > Passkeys page. Also, there is an option to allow how many passkeys a user can register:
You can add/rename/delete your passkeys in the Account/Manage page:
Click the Add Passkey button to register a new passkey. You will be prompted to use your device's built-in biometric authentication (such as fingerprint or facial recognition) or an external security key to complete the registration process:
Once you enable the passkey feature and register at least one passkey, you can use it to log in to your account. On the login page, select the Passkey login option and follow the prompts to authenticate using your registered passkey:
ASP.NET Core Identity provides various options to configure passkey behavior through the IdentityPasskeyOptions class, which include:
Example configuration:
builder.Services.Configure<IdentityPasskeyOptions>(options =>
{
options.ServerDomain = "abp.io";
options.AuthenticatorTimeout = TimeSpan.FromMinutes(3);
options.ChallengeSize = 64;
});
For a complete list of configuration options, see IdentityPasskeyOptions. For the most up-to-date browser defaults, see the W3C WebAuthn specification.
All passkey operations require HTTPS. The implementation stores authentication data in encrypted and signed cookies that could be intercepted over unencrypted connections.
Passkeys are supported in most modern browsers, including: Chrome, Edge, Firefox, and Safari. Ensure that you are using the latest version of your browser to take advantage of passkey functionality.
For more information on WebAuthn and passkeys, refer to the following resources: