Add webauthn (#82)

* Add webauthn

* Complete WebAuthn device sign up and login

* Move device registration to account page
* Replace the token login with a WebAuthn prompt if the current device has been registered
* Mark the current device in the list of registered auth devices

* Fix after rebase

* Fix tests

* Disable "Add current device" button if current device is registered

* Add option to "Stay signed in"

* Remove device list feature, sign in with deviceId instead

* Improve usability

* Update changelog

Co-authored-by: Matthias Frey <mfrey43@gmail.com>
Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
This commit is contained in:
Matthias Frey
2021-06-14 16:09:40 +02:00
committed by GitHub
parent f7860a9799
commit e87c942cb8
33 changed files with 1111 additions and 60 deletions

View File

@@ -11,12 +11,14 @@ export const permissions = {
createOrder: 'createOrder',
createUserAccount: 'createUserAccount',
deleteAccount: 'deleteAcccount',
deleteAuthDevice: 'deleteAuthDevice',
deleteOrder: 'deleteOrder',
deleteUser: 'deleteUser',
enableSocialLogin: 'enableSocialLogin',
enableSubscription: 'enableSubscription',
readForeignPortfolio: 'readForeignPortfolio',
updateAccount: 'updateAccount',
updateAuthDevice: 'updateAuthDevice',
updateOrder: 'updateOrder',
updateUserSettings: 'updateUserSettings'
};
@@ -36,10 +38,12 @@ export function getPermissions(aRole: Role): string[] {
permissions.createAccount,
permissions.createOrder,
permissions.deleteAccount,
permissions.deleteAuthDevice,
permissions.deleteOrder,
permissions.deleteUser,
permissions.readForeignPortfolio,
permissions.updateAccount,
permissions.updateAuthDevice,
permissions.updateOrder,
permissions.updateUserSettings
];
@@ -52,8 +56,10 @@ export function getPermissions(aRole: Role): string[] {
permissions.createAccount,
permissions.createOrder,
permissions.deleteAccount,
permissions.deleteAuthDevice,
permissions.deleteOrder,
permissions.updateAccount,
permissions.updateAuthDevice,
permissions.updateOrder,
permissions.updateUserSettings
];