示例#1
0
        private void FormSelectUCOSHost_Closed(object sender, EventArgs e)
        {
            if (myUCSHostCfg.sUCOSHost.Length > 0 && myUCSHostCfg.sUCOSRemoteUser.Length > 0 && myUCSHostCfg.sUCOSPassphrase.Length > 0)
            {

                // Decode passphrase to password
                RemoteSupportPassphrase oReportSupportPassphrase = new RemoteSupportPassphrase();
                String sUserPassword = oReportSupportPassphrase.Decode(myUCSHostCfg.sUCOSPassphrase);
                if (!oReportSupportPassphrase.Successful)
                {
                    // Could not decode passphrase; abort
                    MessageBox.Show("Could not decode passphrase: [" + myUCSHostCfg.sUCOSPassphrase + "]");
                    return;
                };

                // Let's try to open the security files
                UCOSClientSSH testClient = new UCOSClientSSH(myUCSHostCfg.sUCOSHost, myUCSHostCfg.sUCOSRemoteUser, sUserPassword);

                /*
                try
                {
                    testClient.Validate();
                }
                catch (Exception ex) {
                    MessageBox.Show(ex.Message);
                    return;
                }
                */

                try
                {
                    Dictionary<string, byte[]> filePack = testClient.GetSecurityFilePack();

                    // Set the directory, file and display tags
                    DRSD.sBackupSetDirectory = @"/usr/local/platform/conf";
                    DRSD.sBackupSetXMLFilename = "platformConfig.xml";
                    DRSD.sDisplayFilePath = myUCSHostCfg.sUCOSHost + ":" + DRSD.sBackupSetDirectory + "/" + DRSD.sBackupSetXMLFilename;
                    byte[] bPlatformConfig = filePack[DRSD.sBackupSetDirectory + "/" + DRSD.sBackupSetXMLFilename];
                    byte[] bDKey = new byte[0];
                    if (filePack.ContainsKey(@"/usr/local/platform/.security/CCMEncryption/keys/dkey.txt")) {
                        bDKey = filePack[@"/usr/local/platform/.security/CCMEncryption/keys/dkey.txt"];
                    }
                    ADHDTech.CiscoCrypt.platformConfigXML.PlatformData oPlatformConfig = ADHDTech.CiscoCrypt.Functions.LoadPlatformConfigBytes(bPlatformConfig);
                    DisplayPlatformConfig(oPlatformConfig, Functions.encoding.GetString(bDKey));
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
示例#2
0
        private void SelectPlatformConfigFile()
        {
            DialogResult result = openFileDialog1.ShowDialog();
            if (result == DialogResult.OK) // Test result.
            {
                // Set the directory, file and display tags
                DRSD.sBackupSetDirectory = Path.GetDirectoryName(openFileDialog1.FileName);
                DRSD.sBackupSetXMLFilename = Path.GetFileName(openFileDialog1.FileName);
                DRSD.sDisplayFilePath = DRSD.sBackupSetDirectory + "\\" + DRSD.sBackupSetXMLFilename;

                ADHDTech.CiscoCrypt.platformConfigXML.PlatformData oPlatformConfig = ADHDTech.CiscoCrypt.Functions.LoadPlatformConfigFile(openFileDialog1.FileName);

                DisplayPlatformConfig(oPlatformConfig, null);
                /*
                DRSD.sUCVersion = oPlatformConfig.Version;
                DRSD.sUCProduct = oPlatformConfig.ProductDeployment.First().ParamValue;
                DRSD.sLocalHostName = oPlatformConfig.LocalHostName.First().ParamValue;
                DRSD.sLocalHostIP0 = oPlatformConfig.LocalHostIP0.First().ParamValue;
                DRSD.sLocalHostAdminName = oPlatformConfig.LocalHostAdminName.First().ParamValue;
                DRSD.sLocalHostAdminPwCrypt = oPlatformConfig.LocalHostAdminPwCrypt.First().ParamValue;
                DRSD.sSftpPwCrypt = oPlatformConfig.SftpPwCrypt.First().ParamValue;
                DRSD.sIPSecSecurityPwCrypt = oPlatformConfig.SftpPwCrypt.First().ParamValue;
                DRSD.sApplUserUsername = oPlatformConfig.ApplUserUsername.First().ParamValue;
                DRSD.sApplUserPwCrypt = oPlatformConfig.ApplUserPwCrypt.First().ParamValue;

                //textBox2.ReadOnly = false;
                DRSD.sBackupSetDirectory = Path.GetDirectoryName(openFileDialog1.FileName);
                DRSD.sBackupSetXMLFilename = Path.GetFileName(openFileDialog1.FileName);
                textBox3.Text = DRSD.sBackupSetDirectory + "\\" + DRSD.sBackupSetXMLFilename;

                ADHDTech.CiscoCrypt.PlatformConfigPassword oPlatformConfigDecrypter = new ADHDTech.CiscoCrypt.PlatformConfigPassword();

                textBox_UCVersion.Text = DRSD.sUCVersion;
                textBox_UCProduct.Text = DRSD.sUCProduct;
                textBox_LocalAdminName.Text = DRSD.sLocalHostAdminName;
                textBox_LocalAdminPass.Text = oPlatformConfigDecrypter.Decrypt(DRSD.sLocalHostAdminPwCrypt);
                //textBox_LocalAdminPass.Text = ADHDTech.CiscoCrypt.Functions.DecryptCCMPlatformValue(DRSD.sLocalHostAdminPwCrypt, "49c8182574a74ca2ddc4358024e98b6e02edfb5a54e3453b7a8e3db5a697bb19");
                textBox_SFTPPass.Text = oPlatformConfigDecrypter.Decrypt(DRSD.sSftpPwCrypt);
                textBox_ClusterSecurity.Text = oPlatformConfigDecrypter.Decrypt(DRSD.sIPSecSecurityPwCrypt);
                textBox_AppUserName.Text = DRSD.sApplUserUsername;
                textBox_AppUserPass.Text = oPlatformConfigDecrypter.Decrypt(DRSD.sApplUserPwCrypt);
                */

            }
        }
示例#3
0
        private void DisplayPlatformConfig(ADHDTech.CiscoCrypt.platformConfigXML.PlatformData oPlatformConfig, string sDKey)
        {
            DRSD.sUCVersion = oPlatformConfig.Version;
            DRSD.sUCProduct = oPlatformConfig.ProductDeployment.First().ParamValue;
            DRSD.sLocalHostName = oPlatformConfig.LocalHostName.First().ParamValue;
            DRSD.sLocalHostIP0 = oPlatformConfig.LocalHostIP0.First().ParamValue;
            DRSD.sLocalHostAdminName = oPlatformConfig.LocalHostAdminName.First().ParamValue;
            DRSD.sLocalHostAdminPwCrypt = oPlatformConfig.LocalHostAdminPwCrypt.First().ParamValue;
            DRSD.sSftpPwCrypt = oPlatformConfig.SftpPwCrypt.First().ParamValue;
            DRSD.sIPSecSecurityPwCrypt = oPlatformConfig.SftpPwCrypt.First().ParamValue;
            DRSD.sApplUserUsername = oPlatformConfig.ApplUserUsername.First().ParamValue;
            DRSD.sApplUserPwCrypt = oPlatformConfig.ApplUserPwCrypt.First().ParamValue;

            ADHDTech.CiscoCrypt.PlatformConfigPassword oPlatformConfigDecrypter = new ADHDTech.CiscoCrypt.PlatformConfigPassword();

            textBox_XMLFilePath.Text = DRSD.sDisplayFilePath;
            textBox_UCVersion.Text = DRSD.sUCVersion;
            textBox_UCProduct.Text = DRSD.sUCProduct;
            textBox_LocalAdminName.Text = DRSD.sLocalHostAdminName;
            // In 12, the LocalHostAdminCrypt switched from static DES to AES256 w/ DKEY
            string sDecryptedAdminPw = "<Need dKey>";
            string sTmpPw = oPlatformConfigDecrypter.Decrypt(DRSD.sLocalHostAdminPwCrypt);
            if (oPlatformConfigDecrypter.Successful)
            {
                sDecryptedAdminPw = sTmpPw;
            }
            else if (! String.IsNullOrEmpty(sDKey)) {
                // Let's try the dKey instead
                sTmpPw = Functions.DecryptCCMPlatformValue(DRSD.sLocalHostAdminPwCrypt, sDKey.Substring(0, 32), true);
                if (sTmpPw.Length > 0) {
                    sDecryptedAdminPw = sTmpPw;
                }
            }
            textBox_LocalAdminPass.Text = sDecryptedAdminPw;
            textBox_SFTPPass.Text = oPlatformConfigDecrypter.Decrypt(DRSD.sSftpPwCrypt);
            textBox_ClusterSecurity.Text = oPlatformConfigDecrypter.Decrypt(DRSD.sIPSecSecurityPwCrypt);
            textBox_AppUserName.Text = DRSD.sApplUserUsername;
            textBox_AppUserPass.Text = oPlatformConfigDecrypter.Decrypt(DRSD.sApplUserPwCrypt);
        }