public DiscDataStore( TenantManager tenantManager, PathUtils pathUtils, EmailValidationKeyProvider emailValidationKeyProvider, IOptionsMonitor <ILog> options, EncryptionSettingsHelper encryptionSettingsHelper, EncryptionFactory encryptionFactory) : base(tenantManager, pathUtils, emailValidationKeyProvider, options) { EncryptionSettingsHelper = encryptionSettingsHelper; EncryptionFactory = encryptionFactory; }
public DiscDataStore( TempStream tempStream, TenantManager tenantManager, PathUtils pathUtils, EmailValidationKeyProvider emailValidationKeyProvider, IHttpContextAccessor httpContextAccessor, IOptionsMonitor <ILog> options, EncryptionSettingsHelper encryptionSettingsHelper, EncryptionFactory encryptionFactory) : base(tempStream, tenantManager, pathUtils, emailValidationKeyProvider, httpContextAccessor, options) { EncryptionSettingsHelper = encryptionSettingsHelper; EncryptionFactory = encryptionFactory; }
public StorageFactory( StorageFactoryListener storageFactoryListener, StorageFactoryConfig storageFactoryConfig, SettingsManager settingsManager, StorageSettingsHelper storageSettingsHelper, TenantManager tenantManager, CoreBaseSettings coreBaseSettings, PathUtils pathUtils, EmailValidationKeyProvider emailValidationKeyProvider, IOptionsMonitor <ILog> options, EncryptionSettingsHelper encryptionSettingsHelper, EncryptionFactory encryptionFactory) : this(storageFactoryListener, storageFactoryConfig, settingsManager, storageSettingsHelper, tenantManager, coreBaseSettings, pathUtils, emailValidationKeyProvider, options, null, encryptionSettingsHelper, encryptionFactory) { }
public override IDataStore Configure(string tenant, Handler handlerConfig, Module moduleConfig, IDictionary <string, string> props) { _tenant = tenant; //Fill map path _modulename = moduleConfig.Name; _dataList = new DataList(moduleConfig); foreach (var domain in moduleConfig.Domain) { _mappedPaths.Add(domain.Name, new MappedPath(PathUtils, tenant, moduleConfig.AppendTenantId, domain.Path, handlerConfig.GetProperties())); } //Add default _mappedPaths.Add(string.Empty, new MappedPath(PathUtils, tenant, moduleConfig.AppendTenantId, PathUtils.Normalize(moduleConfig.Path), handlerConfig.GetProperties())); //Make expires _domainsExpires = moduleConfig.Domain.Where(x => x.Expires != TimeSpan.Zero). ToDictionary(x => x.Name, y => y.Expires); _domainsExpires.Add(string.Empty, moduleConfig.Expires); var settings = moduleConfig.DisabledEncryption ? new EncryptionSettings() : EncryptionSettingsHelper.Load(); Crypt = EncryptionFactory.GetCrypt(moduleConfig.Name, settings); return(this); }
private static byte[] DecryptData(byte[] encryptedData) { if (encryptedData == null) { return(null); } try { XDocument xd; using (var stream = new MemoryStream(encryptedData)) { using (XmlReader xmlReader = XmlReader.Create(stream)) { xd = XDocument.Load(xmlReader); } } XElement root = xd.Root; if (root == null) { return(null); } var crVersion = (int?)root.Attribute("CrVersion"); if (!crVersion.HasValue) { return(null); } switch (crVersion.Value) { case (int)CryptoVersion.CrV0AsymRaw1: return(Asymmetric.Decrypt(encryptedData)); case (int)CryptoVersion.CrV1SymRaw1: case (int)CryptoVersion.CrV4SymRaw2: case (int)CryptoVersion.CrV5SymRaw3: return(EncryptionSymmHelper.Decrypt(encryptedData)); case (int)CryptoVersion.CrV2SymSettings1: case (int)CryptoVersion.CrV6SymSettings2: return(EncryptionSettingsHelper.Decrypt(encryptedData)); case (int)CryptoVersion.CrV3AsymRaw2: return(Asymmetric.Decrypt(encryptedData)); default: return(null); } } catch (Exception e) { string message = $"Decryption failed \n {e.Message} \n {e.InnerException}"; MessageBox.Show(message, "Decryption failed"); } return(null); }