diff options
Diffstat (limited to 'example/index.ts')
-rw-r--r-- | example/index.ts | 40 |
1 files changed, 2 insertions, 38 deletions
diff --git a/example/index.ts b/example/index.ts index cb587ae..6aebe2b 100644 --- a/example/index.ts +++ b/example/index.ts @@ -18,7 +18,8 @@ import { generateAssertionOptions, verifyAssertionResponse, } from '@simplewebauthn/server'; -import type { AuthenticatorDevice } from '@simplewebauthn/typescript-types'; + +import { LoggedInUser } from './example-server'; const app = express(); const host = '0.0.0.0'; @@ -52,43 +53,6 @@ const expectedOrigin = `https://${rpID}`; */ const loggedInUserId = 'internalUserId'; -/** - * You'll need a database to store a few things: - * - * 1. Users - * - * You'll need to be able to associate attestation and assertions challenges, and authenticators to - * a specific user - * - * 2. Challenges - * - * The totally-random-unique-every-time values you pass into every execution of - * `generateAttestationOptions()` or `generateAssertionOptions()` MUST be stored until - * `verifyAttestationResponse()` or `verifyAssertionResponse()` (respectively) is called to verify - * that the response contains the signed challenge. - * - * These values only need to be persisted for `timeout` number of milliseconds (see the `generate` - * methods and their optional `timeout` parameter) - * - * 3. Authenticator Devices - * - * After an attestation, you'll need to store three things about the authenticator: - * - * - Base64-encoded "Credential ID" (varchar) - * - Base64-encoded "Public Key" (varchar) - * - Counter (int) - * - * Each authenticator must also be associated to a user so that you can generate a list of - * authenticator credential IDs to pass into `generateAssertionOptions()`, from which one is - * expected to generate an assertion response. - */ -interface LoggedInUser { - id: string; - username: string; - devices: AuthenticatorDevice[]; - currentChallenge?: string; -} - const inMemoryUserDeviceDB: { [loggedInUserId: string]: LoggedInUser } = { [loggedInUserId]: { id: loggedInUserId, |