set private key on login

This commit is contained in:
Kyle Spearrin 2017-04-20 10:29:18 -04:00
parent 51ae3fc62f
commit 458de2d2e0
4 changed files with 8 additions and 3 deletions

View file

@ -9,7 +9,7 @@ namespace Bit.App.Abstractions
CryptoKey Key { get; set; }
CryptoKey PreviousKey { get; }
bool KeyChanged { get; }
byte[] PrivateKey { get; set; }
byte[] PrivateKey { get; }
IDictionary<Guid, CryptoKey> OrgKeys { get; set; }
void SetPrivateKey(CipherString privateKeyEnc, CryptoKey key);

View file

@ -11,7 +11,7 @@ namespace Bit.App.Models
public CipherString(string encryptedString)
{
if(string.IsNullOrWhiteSpace(encryptedString) || !encryptedString.Contains("|"))
if(string.IsNullOrWhiteSpace(encryptedString))
{
throw new ArgumentException(nameof(encryptedString));
}

View file

@ -263,6 +263,11 @@ namespace Bit.App.Services
private void ProcessLoginSuccess(CryptoKey key, TokenResponse response)
{
if(response.PrivateKey != null)
{
_cryptoService.SetPrivateKey(new CipherString(response.PrivateKey), key);
}
_cryptoService.Key = key;
_tokenService.Token = response.AccessToken;
_tokenService.RefreshToken = response.RefreshToken;

View file

@ -112,7 +112,7 @@ namespace Bit.App.Services
return _privateKey;
}
set
private set
{
if(value != null)
{