Interface IPasskeyStore
Provides PasskeyService with access to the app's stored passkeys. Apps implement it over their own storage (typically a database table) and register it with AddPasskeys<TStore>(IServiceCollection, Action<PasskeyOptions>?).
Namespace: Singulink.Net.Http.Api.Service.Passkeys
Assembly: Singulink.Net.Http.Api.Service.Passkeys.dll
Syntax
public interface IPasskeyStore
Remarks
The store is resolved per request (scoped), so it can use a scoped database context. Passkeys are added and removed by the app itself: a new passkey's data is returned by FinishRegistrationAsync(string, string, string, string?, CancellationToken) for the app to store along with its own values.
Methods
| Name | Description |
|---|---|
| FindAsync(byte[], CancellationToken) | Finds a passkey by its credential ID, or returns null if no passkey has that credential ID. |
| GetUserPasskeysAsync(string, CancellationToken) | Gets all the passkeys of a user. They are used to limit sign-ins and verifications to the user's passkeys, and to stop a user from adding a second passkey to an authenticator that already has one for them. |
| UpdateAsync(PasskeyRecord, DateTime, CancellationToken) | Saves the state a passkey reported when it was used to sign in or verify a user: its SignCount and IsBackedUp values, and the time it was used. |