Handle desktop logged into a different account for biometrics (#1533)

This commit is contained in:
Oscar Hinton 2021-01-15 16:44:27 +01:00 committed by GitHub
parent c4388dad66
commit 0511905ab4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 1 deletions

View File

@ -1420,6 +1420,12 @@
"nativeMessagingInvalidEncryptionTitle": {
"message": "Desktop communication interrupted"
},
"nativeMessagingWrongUserDesc": {
"message": "The desktop application is logged into a different account. Please ensure both applications are logged into the same account."
},
"nativeMessagingWrongUserTitle": {
"message": "Account missmatch"
},
"biometricsNotEnabledTitle": {
"message": "Biometrics not enabled"
},

View File

@ -106,6 +106,13 @@ export class NativeMessagingBackground {
}
break;
}
case 'wrongUserId':
this.messagingService.send('showDialog', {
text: this.i18nService.t('nativeMessagingWrongUserDesc'),
title: this.i18nService.t('nativeMessagingWrongUserTitle'),
confirmText: this.i18nService.t('ok'),
type: 'error',
});
default:
// Ignore since it belongs to another device
if (message.appId !== this.appId) {
@ -247,7 +254,11 @@ export class NativeMessagingBackground {
this.publicKey = publicKey;
this.privateKey = privateKey;
this.sendUnencrypted({command: 'setupEncryption', publicKey: Utils.fromBufferToB64(publicKey)});
this.sendUnencrypted({
command: 'setupEncryption',
publicKey: Utils.fromBufferToB64(publicKey),
userId: await this.userService.getUserId()
});
return new Promise((resolve, reject) => this.secureSetupResolve = resolve);
}