•  
     
    story #31173 register a new passkey
Summary
user
register a new passkey
Empty
  • There is a WebAuthn pane in user preferences
  • By clicking on the add button, I can fill an input with the key name and then register my passkey
  • Then a button 'check my key' appear
  • On clicking on this button, I can use my passkey to check that it works
Empty
Empty
Status
Authentication & LDAP
Done
Development
  • [ ] Does it involves User Interface? 
  • [ ] Are there any mockups?
  • [ ] Are permissions checked?
  • [ ] Does it need Javascript development?
  • [ ] Does it need a forge upgrade bucket?
  • [ ] Does it need to execute things in system events?
  • [ ] Does it impact project creation (templates)?
  • [ ] Is it exploratory?
  • Implement WebAuthnUser (get, create)
    • WebAuthnUserManager
    • WebAuthnUserDao
    • table in database
  • Implement WebAuthnCredentialSource (getAll, create)
    • composer require web-auth/webauthn-lib
    • WebAuthnCredentialSourceManager implements PublicKeyCredentialSourceRepository
    • WebAuthnCredentialSourceDao
    • table in database
  • Implement WebAuthnOptions (create, get)
    • WebAuthnOptionsManager
    • WebAuthnOptionsDao
    • table (registration) in database
  • Add REST route GET /api/webauthn/generate_registration_options
  • Add REST route POST /api/webauthn/check_registration
  • Implement interface
    • WebAuthn plugin
    • route GET /plugins/webauthn/account
    • template with just a button
    • js asset reacting on button click
  • Add REST route GET /api/webauthn/generate_authentication_options
  • Add REST route POST /api/webauthn/check_authentication
  • Add a check button in user preferences
    • js asset
Details
#31173
Kevin Traini (ktraini)
2023-05-19 14:17
2023-03-20 12:05
32808

References

Follow-ups

User avatar
Joris MASSON (jmasson)2023-03-28 09:56

gerrit #28175 (Implement WebAuthnCredentialSource) integrated in Tuleap 14.6.99.211


  • Status changed from Idea / Sandbox to On going
  • Permissions set to
User avatar
Kevin Traini (ktraini)2023-03-20 15:45
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • Technical informations
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
Kevin Traini (ktraini)2023-03-20 14:53
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • Technical informations
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
Kevin Traini (ktraini)2023-03-20 12:06
  • Technical informations
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
Kevin Traini (ktraini)2023-03-20 12:06
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes