Пример #1
0
        private void InitializeConfigurationSettings()
        {
            if (!File.Exists(_settingsFileName))
            {
                _configurationSettings.Add("BackupZips", @"C:\NovantBackups\SQLBackups\");
                _configurationSettings.Add("ScratchPad", @"C:\NovantBackups\Scratch\");
                _configurationSettings.Add("DbFileLocations", @"C:\Program Files\Microsoft SQL Server\MSSQL13.SQLSVR_2016\MSSQL\DATA\");
                _configurationSettings.Add("ConnectionString", "Server=CTB-MAXIMUS-PC;Database=master;Trusted_Connection=True");
                _configurationSettings.Add("LocalRetentionMonths", "6");
                _configurationSettings.Add("LocalRetentionDays", "0");

                _configurationSettings.Add("EmailUseEmailSettings", "false");
                _configurationSettings.Add("EmailFromEmail", "*****@*****.**");
                _configurationSettings.Add("EmailSuccessEmail", "*****@*****.**");
                _configurationSettings.Add("EmailFailureEmail", "*****@*****.**");
                _configurationSettings.Add("EmailSMTPOutgoingServer", "smtpout.secureserver.net");
                _configurationSettings.Add("EmailSMTPPort", "25");
                _configurationSettings.Add("EmailLoginUserName", "*****@*****.**");
                _configurationSettings.Add("EmailLoginUserPassword", "Babylon5");
                _configurationSettings.Add("EmailRequiresSSL", "true");
                _configurationSettings.Add("EmailEnableSSL", "true");
                _configurationSettings.Add("EmailOutgoingPortNumber", "465");

                _configurationSettings.Add("FTPUseFTPSettings", "false");
                _configurationSettings.Add("FTPHostAddress", "");
                _configurationSettings.Add("FTPUserName", "BobRhinehardt");
                _configurationSettings.Add("FTPPassword", "S#u1p!D");
                _configurationSettings.Add("FTPPort", "21");
                _configurationSettings.Add("FTPDataConnection", "Passive(PASV)");
                _configurationSettings.Add("FTPRemoteFolder", @"ftp://ftp.addressyourcompany");
                _configurationSettings.Add("FTPWriteSessionToLog", "true");
                _configurationSettings.Add("FTPRetentionsMonths", "6");
                _configurationSettings.Add("FTPRetentionDays", "0");

                FileStream fs = new FileStream(_settingsFileName, FileMode.Append);

                foreach (KeyValuePair <string, string> setting in _configurationSettings)
                {
                    // -------------------------------------------------------
                    // This time let's encrypt only the data, delimit with a :
                    // -------------------------------------------------------
                    string encryptedConfigLine = setting.Key + ":" + CryptographyCBC.EncryptString(setting.Value, _encryptionKey) +
                                                 Environment.NewLine;
                    byte[] bConfigLine = Encoding.Default.GetBytes(encryptedConfigLine);
                    fs.Write(bConfigLine, 0, bConfigLine.Length);
                }
                fs.Close();
            }
        }
Пример #2
0
        private void ReadConfigurationSettings()
        {
            if (File.Exists(_settingsFileName))
            {
                _configurationSettings.Clear();
                string[] configurationLines = File.ReadAllLines(_settingsFileName);
                string   configLine         = String.Empty;
                string[] splitKeyValue;

                string splitValue;
                string decryptedValue;
                string decryptedKey;


                foreach (string configSettingPair in configurationLines)
                {
                    splitKeyValue = configSettingPair.Split(':');
                    decryptedKey  = splitKeyValue[0];

                    splitValue     = splitKeyValue[1]; // this is still encrypted
                    decryptedValue = CryptographyCBC.DecryptString(splitValue, _encryptionKey);

                    _configurationSettings.Add(decryptedKey, decryptedValue);
                }

                _configurationSettings.TryGetValue("BackupZips", out string backupZipDirectory);
                txtBackupZips.Text = backupZipDirectory;

                _configurationSettings.TryGetValue("ScratchPad", out string scratchPadDirectory);
                txtScratchPad.Text = scratchPadDirectory;

                _configurationSettings.TryGetValue("DbFileLocations", out string dbFileDirectory);
                txtSQLFileLocations.Text = dbFileDirectory;

                _configurationSettings.TryGetValue("LocalRetentionMonths", out string months);
                nudMonths.Value = Convert.ToInt32(months);

                _configurationSettings.TryGetValue("LocalRetentionDays", out string days);
                nudDays.Value = Convert.ToInt32(days);

                _configurationSettings.TryGetValue("EmailSuccessEmail", out string successfulEmail);
                txtSuccessEmail.Text = successfulEmail;

                _configurationSettings.TryGetValue("EmailFailureEmail", out string failureEmail);
                txtFailureEmail.Text = failureEmail;

                _configurationSettings.TryGetValue("EmailUseEmailSettings", out string useEMailSettigns);
                chkConfigureEmails.Checked = Convert.ToBoolean(useEMailSettigns == "true");

                _configurationSettings.TryGetValue("ConnectionString", out string connectionString);
                txtConnectionString.Text = connectionString;

                _configurationSettings.TryGetValue("EmailFromEmail", out string emailFromEmail);
                txtFromEmail.Text = emailFromEmail;

                _configurationSettings.TryGetValue("EmailSMTPOutgoingServer", out string SMTPOutgoingServer);
                txtSMTPServer.Text = SMTPOutgoingServer;

                _configurationSettings.TryGetValue("EmailSMTPPort", out string EmailSMTPPort);
                nudFTPPort.Value = Convert.ToInt32(EmailSMTPPort);

                _configurationSettings.TryGetValue("EmailRequiresSSL", out string EmailRequiresSSL);
                chkServerRequiresAuth.Checked = Convert.ToBoolean(EmailRequiresSSL == "true");

                _configurationSettings.TryGetValue("EmailEnableSSL", out string EmailEnableSSL);
                chkEnableSSL.Checked = Convert.ToBoolean(EmailEnableSSL == "true");

                _configurationSettings.TryGetValue("EmailLoginUserName", out string EmailLoginUserName);
                txtEmailLoginUserName.Text = EmailLoginUserName;

                _configurationSettings.TryGetValue("EmailLoginUserPassword", out string EmailLoginUserPassword);
                txtEmailLoginUserPassword.Text = EmailLoginUserPassword;

                _configurationSettings.TryGetValue("EmailOutgoingPortNumber", out string EmailOutgoingPortNumber);
                nudEmailOutgoingPortNumber.Value = Convert.ToInt32(EmailOutgoingPortNumber);
            }
        }