Project

General

Profile

Actions

User Story #237

open

Epic #3: Implement a secure user authentication system

Feature #160: User Login

As a user, I want to log in using a security key (WebAuthn/passkey), so that I can use phishing-resistant MFA

User Story #237: As a user, I want to log in using a security key (WebAuthn/passkey), so that I can use phishing-resistant MFA

Added by Bricklou 11 days ago. Updated 2 days ago.

Status:
Draft
Priority:
Normal
Assigned To:
-
Start date:
08/12/2026
Due date:
% Done:

0%

Estimated time:
(Total: 0:00 h)

Description

This user story covers WebAuthn-based multi-factor authentication (passkeys and hardware security keys).

Acceptance requirements:

  • Users can register one or more WebAuthn credentials from their profile
  • Users with a registered security key are prompted to use it during the MFA login step
  • The login flow correctly handles cancellation and unsupported browser scenarios
  • Credentials are bound to the user and stored securely (public key, credential ID, sign count)
  • Sign count is verified on each assertion to detect cloned authenticators

Subtasks 5 (5 open0 closed)

Sub-Task #239: Generate WebAuthn registration challenge and verify attestation (backend)Draft08/12/2026

Actions
Sub-Task #240: Generate WebAuthn authentication challenge and verify assertion (backend)Draft08/12/2026

Actions
Sub-Task #241: Store WebAuthn credentials (public key, credential ID, sign count) in the databaseDraft08/12/2026

Actions
Sub-Task #242: Frontend: WebAuthn credential registration flow in user profileDraft08/12/2026

Actions
Sub-Task #243: Frontend: WebAuthn assertion flow in MFA login stepDraft08/12/2026

Actions

Updated by Bricklou 11 days ago Actions #1

  • Subtask #239 added

Updated by Bricklou 11 days ago Actions #2

  • Subtask #240 added

Updated by Bricklou 11 days ago Actions #3

  • Subtask #241 added

Updated by Bricklou 11 days ago Actions #4

  • Subtask #242 added

Updated by Bricklou 11 days ago Actions #5

  • Subtask #243 added

Updated by Bricklou 11 days ago Actions #6

  • Subtask #246 added

Updated by Bricklou 2 days ago Actions #7

  • Subtask deleted (#246)
Actions

Also available in: PDF Atom