1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-14 15:23:33 +00:00

PM-4877: Only allow replacing passkeys for the same userhandle (#9804)

* Initial draft

* small cleanup

* show vaul items without passkeys

* Refactored a bit

* tests run for me?

* Fixed platform test

* null and undefined

* lint
This commit is contained in:
Anders Åberg
2024-07-16 19:39:41 +02:00
committed by GitHub
parent aa8c5b1516
commit dbc9b9c90b
5 changed files with 28 additions and 2 deletions

View File

@@ -12,6 +12,11 @@ export interface NewCredentialParams {
*/
userName: string;
/**
* The userhandle (userid) of the user.
*/
userHandle: string;
/**
* Whether or not the user must be verified before completing the operation.
*/

View File

@@ -215,6 +215,7 @@ describe("FidoAuthenticatorService", () => {
expect(userInterfaceSession.confirmNewCredential).toHaveBeenCalledWith({
credentialName: params.rpEntity.name,
userName: params.userEntity.name,
userHandle: Fido2Utils.bufferToString(params.userEntity.id),
userVerification,
rpId: params.rpEntity.id,
} as NewCredentialParams);

View File

@@ -112,6 +112,7 @@ export class Fido2AuthenticatorService implements Fido2AuthenticatorServiceAbstr
const response = await userInterfaceSession.confirmNewCredential({
credentialName: params.rpEntity.name,
userName: params.userEntity.name,
userHandle: Fido2Utils.bufferToString(params.userEntity.id),
userVerification: params.requireUserVerification,
rpId: params.rpEntity.id,
});