mirror of
https://github.com/bitwarden/mobile
synced 2025-12-15 07:43:37 +00:00
[PM-3547] Change logic to set user key for inactive account (#2715)
This commit is contained in:
@@ -59,13 +59,6 @@ namespace Bit.Core.Services
|
|||||||
|
|
||||||
public async Task<bool> IsLockedAsync(string userId = null)
|
public async Task<bool> IsLockedAsync(string userId = null)
|
||||||
{
|
{
|
||||||
// When checking if we need to lock inactive account, we don't want to
|
|
||||||
// set the key, so we only check if the account has an auto unlock key
|
|
||||||
if (userId != null && await _stateService.GetActiveUserIdAsync() != userId)
|
|
||||||
{
|
|
||||||
return await _cryptoService.HasAutoUnlockKeyAsync(userId);
|
|
||||||
}
|
|
||||||
|
|
||||||
var biometricSet = await IsBiometricLockSetAsync(userId);
|
var biometricSet = await IsBiometricLockSetAsync(userId);
|
||||||
if (biometricSet && await _stateService.GetBiometricLockedAsync(userId))
|
if (biometricSet && await _stateService.GetBiometricLockedAsync(userId))
|
||||||
{
|
{
|
||||||
@@ -78,8 +71,11 @@ namespace Bit.Core.Services
|
|||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
if (userId != null && await _stateService.GetActiveUserIdAsync() != userId)
|
||||||
|
{
|
||||||
await _cryptoService.SetUserKeyAsync(await _cryptoService.GetAutoUnlockKeyAsync(userId), userId);
|
await _cryptoService.SetUserKeyAsync(await _cryptoService.GetAutoUnlockKeyAsync(userId), userId);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Check again to verify auto key was set
|
// Check again to verify auto key was set
|
||||||
var hasKey = await _cryptoService.HasUserKeyAsync(userId);
|
var hasKey = await _cryptoService.HasUserKeyAsync(userId);
|
||||||
|
|||||||
Reference in New Issue
Block a user