Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
There are scenarios where the RP ID selected is not the correct one for the device the user is in. When that happens, we want to tell the user to try again, but this time, we will select another RP ID.
To be able to select the right RP ID the second time, we need to remember which RP ID was selected in the first place (or second place). We can't store that in the
MultiWebAuthnIdentity
instance, because there is a new instance every time the user tries to log in.Instead, I want to store this info in the
Connection
instance, which is the same across tries.In this PR, I move the logic of selecting the RP ID to the
Connection.fromWebauthnCredentials
.Changes
Connection.fromWebauthnCredentials
.rpId
parameter toMultiWebAuthnIdentity
constructors.Tests
login
method ofConnection
class to check that rpID is passed as expected.🟡 Some screens were changed