Expand description
Server-side passkey plugin for OpenAuth.
The plugin is server-only. It exposes Better Auth-inspired HTTP endpoints
under /passkey/*, contributes a passkeys table to the OpenAuth schema,
and uses webauthn-rs for WebAuthn ceremony generation and verification.
use openauth_core::options::OpenAuthOptions;
use openauth_passkey::{passkey, PasskeyOptions};
let options = OpenAuthOptions::new()
.secret("secret-a-at-least-32-chars-long!!")
.base_url("https://app.example.com")
.plugin(passkey(PasskeyOptions::default()));WebAuthn registration and authentication state is persisted server-side in
OpenAuth’s verification storage and keyed by a signed short-lived cookie.
This is why the crate enables webauthn-rs state serialization: the state is
not trusted from the client and is deleted after successful verification.
Structs§
- After
Authentication Verification Input - After
Registration Verification Input - Authenticator
Selection - Authenticator selection hints for generated registration options.
- Passkey
- Passkey
Advanced Options - Advanced passkey plugin settings.
- Passkey
Authentication Options - Passkey
Authentication Start - Passkey
Options - Passkey plugin settings.
- Passkey
Registration Options - Passkey
Registration Start - Passkey
Registration User - User identity used for passkey registration.
- Registration
WebAuthn Options - WebAuthn option customizations resolved for one registration request.
- Resolve
Registration User Input - Verified
Authentication - Verified
Passkey Credential - WebAuthn
Config
Enums§
- Authenticator
Attachment - Browser authenticator attachment hint.
- Resident
KeyRequirement - Resident key preference used in registration options.
- User
Verification Requirement - User verification preference used in WebAuthn options.
Constants§
Traits§
Functions§
- passkey
- Build the server-side passkey plugin.