Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update this module to support multiple registered devices #57

Open
ScopeyNZ opened this issue Aug 23, 2019 · 5 comments
Open

Update this module to support multiple registered devices #57

ScopeyNZ opened this issue Aug 23, 2019 · 5 comments

Comments

@ScopeyNZ
Copy link
Contributor

ScopeyNZ commented Aug 23, 2019

With #11 the ability to store multiple devices on this method has been added - however there's no UI for it. Currently the flow when you set up the method still is completely relevant as you will always start with some keys.

My recommendation is that we introduce a new UI to replace the reset action when managing a WebAuthn method. The new UI will list existing devices you have registered and provide the ability to add new or remove existing methods.

In terms of API - we currently support registering multiple keys through the API if you remove this line: https://github.com/silverstripe/silverstripe-webauthn-authenticator/blob/master/src/RegisterHandler.php#L154

After this is done we can potentially look at allowing "single-platform" authenticators again.

(cc @silverstripeux if there's some ideas for "device management" UIs)

@brynwhyman
Copy link

We're talking to Yubico for #15 and they have "highly recommended" this feature.

If this was implemented, also introducing the ability to rename or add a note to each registered key would be nice, i.e "Work" and "Home/ back-up".

@ScopeyNZ
Copy link
Contributor Author

ScopeyNZ commented Feb 7, 2020

I'm happy to help contribute to this feature, but I have no idea how this should look from a UX perspective. It needs a new screen.

@brynwhyman
Copy link

Maybe this is a good opportunity to flex those UX design muscles of yours @ScopeyNZ!

@ScopeyNZ
Copy link
Contributor Author

ScopeyNZ commented Feb 7, 2020

Haha. Maybe...

Currently, when reviewing your MFA settings it gives you a section that says "Security key: registered" and it gives you the option to reset, remove, or set as default.

I'm thinking that we remove the reset and remove options, and replace with an "update" or something. Then we can have some variation of this screen to show you your existing registered devices - allowing you to remove existing ones and add new ones:

https://projects.invisionapp.com/share/3PNSKZQYBJZ#/screens/333728361

And then maybe we should give an option after registering a key to return to this new screen, so you can do multiple in one go. This would tie into the "on first login" flow too.

@Cheddam
Copy link
Member

Cheddam commented Feb 12, 2020

Just a tiny extra note on this from discussion with Yubico - part of the testing effort on this implementation should cover ensuring that a single key can't be registered in multiple instances against the same user.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants