public virtual ProtectedSecret Protect(string keyName, ClearSecret secret) { if (secret == null) { throw new ArgumentNullException(nameof(secret)); } var encryptedSecret = _encryptionManager.Encrypt(keyName, SecretEncoding.GetBytes(secret.Value)); return(new ProtectedSecret { ApplicationName = secret.ApplicationName, MasterKeyId = keyName, InitialisationVector = encryptedSecret.InitialisationVector, Name = secret.Name, ProtectedDocumentKey = encryptedSecret.EncryptedDataKey, ProtectedSecretValue = encryptedSecret.EncryptedData }); }
public void ProtectAndSave(string keyName, ClearSecret secret) { var ps = Protect(keyName, secret); _secrets.Save(ps); }