diff --git a/CASA/micasad/common/CSSSUtils.cs b/CASA/micasad/common/CSSSUtils.cs index 8ac0e8d8..f0b6fbbe 100644 --- a/CASA/micasad/common/CSSSUtils.cs +++ b/CASA/micasad/common/CSSSUtils.cs @@ -35,38 +35,63 @@ using sscs.constants; namespace sscs.common { class CSSSUtils - { - -#if W32 - private static bool IsRegKeySet(string sPath, string sValue) - { - Microsoft.Win32.RegistryKey key; - - try - { - key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(sPath); - int iValue = (int)key.GetValue(sValue); - key.Close(); - if (iValue > 0) - { - return true; - } - } - catch (Exception e) - { - - } - return false; - } -#endif - - public static bool StoreDesktopPasswordInCache() - { + { + +#if W32 + private static string CASA_REG_KEY = "SOFTWARE\\Novell\\CASA"; + + private static bool IsRegKeySet(string sPath, string sValue) + { + Microsoft.Win32.RegistryKey key; + + try + { + key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(sPath); + int iValue = (int)key.GetValue(sValue); + key.Close(); + if (iValue > 0) + { + return true; + } + } + catch (Exception e) + { + + } + return false; + } + + internal static void SetAllowDesktopAccess() + { + // create a reg key + Microsoft.Win32.RegistryKey key; + key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(CASA_REG_KEY); + key.SetValue("CacheDesktopPassword", 1, Microsoft.Win32.RegistryValueKind.DWord); + key.Close(); + } + + internal static void RemoveGlobalCASASettings() + { + // Delete CASA settings + try + { + Microsoft.Win32.Registry.LocalMachine.DeleteSubKeyTree(CASA_REG_KEY); + } + catch (Exception e) + { + System.Diagnostics.Debug.WriteLine(e.ToString()); + } + } + +#endif + + public static bool StoreDesktopPasswordInCache() + { #if LINUX return true; -#else - return IsRegKeySet("SOFTWARE\\Novell\\CASA", "CacheDesktopPassword"); -#endif +#else + return IsRegKeySet(CASA_REG_KEY, "CacheDesktopPassword"); +#endif } public static bool IsFileOwnedByRoot(string filePath) diff --git a/CASA/micasad/init/WinSecretStoreClientService.cs b/CASA/micasad/init/WinSecretStoreClientService.cs index 26da9861..4d68078d 100644 --- a/CASA/micasad/init/WinSecretStoreClientService.cs +++ b/CASA/micasad/init/WinSecretStoreClientService.cs @@ -120,6 +120,12 @@ namespace sscs.init stopService(); uninstallService(); CredMgr.Uninstall(); + CSSSUtils.RemoveGlobalCASASettings(); + return; + } + else if (opt != null && opt.ToLower() == "/allowdesktopaccess") + { + CSSSUtils.SetAllowDesktopAccess(); return; } diff --git a/CASA/package/windows/vs_solutions/CASA-msm/CASA-msm.vdproj b/CASA/package/windows/vs_solutions/CASA-msm/CASA-msm.vdproj index fbd7c408..240148f0 100644 --- a/CASA/package/windows/vs_solutions/CASA-msm/CASA-msm.vdproj +++ b/CASA/package/windows/vs_solutions/CASA-msm/CASA-msm.vdproj @@ -223,6 +223,20 @@ "InstallerClass" = "11:FALSE" "CustomActionData" = "8:" } + "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_9E79D5D241454687B678D62A7EFEDF13" + { + "Name" = "8:Primary output from micasad (Active)" + "Condition" = "8:ALLOWDESKTOPACCESS" + "Object" = "8:_C37A35F33FD14730BC7E7C47DF9C2DD1" + "FileType" = "3:2" + "InstallAction" = "3:1" + "Arguments" = "8:/allowdesktopaccess" + "EntryPoint" = "8:" + "Sequence" = "3:3" + "Identifier" = "8:_23CBBD9A_04A5_4A08_B57E_C46970DB8E69" + "InstallerClass" = "11:FALSE" + "CustomActionData" = "8:" + } "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_F893AB0289144D1BB1926D594164A8E8" { "Name" = "8:Primary output from micasad (Active)" @@ -250,7 +264,7 @@ { "AssemblyRegister" = "3:1" "AssemblyIsInGAC" = "11:FALSE" - "AssemblyAsmDisplayName" = "8:Novell.CASA.CASAPol, Version=1.6.3008.18192, Culture=neutral, processorArchitecture=x86" + "AssemblyAsmDisplayName" = "8:Novell.CASA.CASAPol, Version=1.6.3001.22848, Culture=neutral, processorArchitecture=x86" "ScatterAssemblies" { "_048A7B362F6B1443A28BF3E3A36F6137" @@ -281,7 +295,7 @@ { "AssemblyRegister" = "3:1" "AssemblyIsInGAC" = "11:FALSE" - "AssemblyAsmDisplayName" = "8:Novell.CASA.Common, Version=1.6.3008.18189, Culture=neutral, processorArchitecture=x86" + "AssemblyAsmDisplayName" = "8:Novell.CASA.Common, Version=1.6.3008.28221, Culture=neutral, processorArchitecture=x86" "ScatterAssemblies" { "_3E7ABF8D4ECD72CBED6AB0E40638BDF1" @@ -312,7 +326,7 @@ { "AssemblyRegister" = "3:1" "AssemblyIsInGAC" = "11:FALSE" - "AssemblyAsmDisplayName" = "8:AppModule.NamedPipes, Version=1.6.0.18189, Culture=neutral, processorArchitecture=MSIL" + "AssemblyAsmDisplayName" = "8:AppModule.NamedPipes, Version=1.6.0.28220, Culture=neutral, processorArchitecture=MSIL" "ScatterAssemblies" { "_A80E6ED76A07359BE8DF5958EBDC7009" @@ -343,7 +357,7 @@ { "AssemblyRegister" = "3:1" "AssemblyIsInGAC" = "11:FALSE" - "AssemblyAsmDisplayName" = "8:AppModule.InterProcessComm, Version=1.6.0.18189, Culture=neutral, processorArchitecture=MSIL" + "AssemblyAsmDisplayName" = "8:AppModule.InterProcessComm, Version=1.6.0.22846, Culture=neutral, processorArchitecture=MSIL" "ScatterAssemblies" { "_C41423472EC7318AE0EF12EEFFAF6195" diff --git a/CASA/package/windows/vs_solutions/CASA32-msi/CASA.ncb b/CASA/package/windows/vs_solutions/CASA32-msi/CASA.ncb index 319e3435..a8205ac6 100644 Binary files a/CASA/package/windows/vs_solutions/CASA32-msi/CASA.ncb and b/CASA/package/windows/vs_solutions/CASA32-msi/CASA.ncb differ diff --git a/CASA/package/windows/vs_solutions/CASA32-msi/CASA.suo b/CASA/package/windows/vs_solutions/CASA32-msi/CASA.suo index 4714a4d9..c2cd4715 100644 Binary files a/CASA/package/windows/vs_solutions/CASA32-msi/CASA.suo and b/CASA/package/windows/vs_solutions/CASA32-msi/CASA.suo differ diff --git a/CASA/package/windows/vs_solutions/CASA32-msi/CASA.vdproj b/CASA/package/windows/vs_solutions/CASA32-msi/CASA.vdproj index b3deda25..780b06db 100644 --- a/CASA/package/windows/vs_solutions/CASA32-msi/CASA.vdproj +++ b/CASA/package/windows/vs_solutions/CASA32-msi/CASA.vdproj @@ -61,6 +61,12 @@ "OwnerKey" = "8:_BF2CE61978054B2DB482792974E390F0" "MsmSig" = "8:_UNDEFINED" } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_98DCC664712A41B993FCD33026D06FFC" + "MsmSig" = "8:_UNDEFINED" + } } "Configurations" { @@ -316,7 +322,7 @@ "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:CASA" "ProductCode" = "8:{82D754E5-AC82-48BC-B7AF-FAC9DBCBA9BF}" - "PackageCode" = "8:{115E9F7C-F53A-4CC6-801F-E9293BB56FA5}" + "PackageCode" = "8:{D135294C-0F9F-4346-A1BB-913AAA6D897B}" "UpgradeCode" = "8:{DFD8B8A0-EA51-4202-831C-7CD2B90A63AE}" "RestartWWWService" = "11:FALSE" "RemovePreviousVersions" = "11:TRUE" @@ -708,7 +714,7 @@ "ContextData" = "8:" "Attributes" = "3:0" "Setting" = "3:2" - "Value" = "8:CASA can capture your username and password when you authenticate to Directory Services. Your credentials can then be used by other applications to authenticate." + "Value" = "8:CASA can capture your username and password when you authenticate to Directory Services. Your credentials can then be used by other applications to authenticate. CASA uses your Desktop password to encrypt and store captured credentials." "DefaultValue" = "8:#1215" "UsePlugInResources" = "11:TRUE" } @@ -772,8 +778,8 @@ "Type" = "3:3" "ContextData" = "8:" "Attributes" = "3:0" - "Setting" = "3:1" - "Value" = "8:#1235" + "Setting" = "3:2" + "Value" = "8:Allow applications to use my Desktop username and password to authenticate." "DefaultValue" = "8:#1235" "UsePlugInResources" = "11:TRUE" } @@ -786,7 +792,7 @@ "ContextData" = "8:Public" "Attributes" = "3:2" "Setting" = "3:2" - "Value" = "8:CHECKBOXA2" + "Value" = "8:ALLOWDESKTOPACCESS" "DefaultValue" = "8:CHECKBOXA2" "UsePlugInResources" = "11:TRUE" } @@ -812,7 +818,7 @@ "ContextData" = "8:1;True=1;False=0" "Attributes" = "3:0" "Setting" = "3:0" - "Value" = "3:0" + "Value" = "3:1" "DefaultValue" = "3:1" "UsePlugInResources" = "11:TRUE" }