public static void SetAccessControl(this Microsoft.Win32.RegistryKey key, System.Security.AccessControl.RegistrySecurity registrySecurity) { }
public static bool RegLogonUser(out IntPtr phToken, string userName, string domain, string passWord) { phToken = IntPtr.Zero; bool bResult = false; if (Configurations.currentPlatform == LikewiseTargetPlatform.Windows) { try { bResult = SecurityDescriptorApi.LogonUser( userName, domain, passWord, (int)SecurityDescriptorApi.LogonType.LOGON32_LOGON_NEW_CREDENTIALS, (int)SecurityDescriptorApi.LogonProvider.LOGON32_PROVIDER_DEFAULT, ref phToken); if (!bResult) { phToken = IntPtr.Zero; int ret = Marshal.GetLastWin32Error(); Logger.Log("RegistryInteropWrapperWindows.RegLogonUser ret = {0}" + ret.ToString()); return bResult; } WindowsIdentity newId = new WindowsIdentity(phToken); impersonatedUser = newId.Impersonate(); NTAccount ntAccount = new NTAccount(domain, userName); IdentityReference identityReference = ntAccount.Translate(typeof(NTAccount)); regSecurity = new System.Security.AccessControl.RegistrySecurity(); System.Security.AccessControl.RegistryAccessRule accessRule = new System.Security.AccessControl.RegistryAccessRule( identityReference, System.Security.AccessControl.RegistryRights.FullControl, System.Security.AccessControl.InheritanceFlags.ContainerInherit, System.Security.AccessControl.PropagationFlags.InheritOnly, System.Security.AccessControl.AccessControlType.Allow); regSecurity.SetAccessRule(accessRule); Logger.Log("RegistryInteropWrapperWindows.RegLogonUser is successfull handle = {0}" + phToken.ToInt32()); } catch (Exception ex) { Logger.LogException("RegistryInteropWrapperWindows.RegLogonUser", ex); } } return bResult; }
public void SetAccessControl(System.Security.AccessControl.RegistrySecurity registrySecurity) { _regKey.SetAccessControl(registrySecurity); }
public IRegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistrySecurity registrySecurity) { return((RegistryKey)_regKey.CreateSubKey(subkey, permissionCheck, registrySecurity)); }
public static AptimaLicenseInfo Main(string licenseKey) { if (licenseKey == string.Empty) return new AptimaLicenseInfo("Missing License Key"); ; AptimaLicenseInfo lic = AptimaLicenseVerifier.VerifyLicenseKey(licenseKey); if (lic.IsValid == false) return lic; DateTime expDate = ConvertStringToDateTime(lic.LicenseExpirString); DateTime today = DateTime.Now; if (expDate < today) { //license is expired return new AptimaLicenseInfo("ERROR: License key is expired. Please contact Aptima to renew your key"); } if (lic.ProductName != "_DDD") { return new AptimaLicenseInfo(String.Format("ERROR: Product license key is not valid. Product code: {0}", lic.ProductName)); } RegistryKey rk; List<string> keys; try { rk = Registry.LocalMachine.OpenSubKey("SOFTWARE").OpenSubKey("Aptima").OpenSubKey("Asim").OpenSubKey("DDD", true); } catch { keys = new List<string>(Registry.LocalMachine.GetSubKeyNames()); if (!keys.Contains("SOFTWARE")) { rk = Registry.LocalMachine; rk.CreateSubKey("SOFTWARE", RegistryKeyPermissionCheck.ReadWriteSubTree); } rk = Registry.LocalMachine.OpenSubKey("SOFTWARE", true); keys = new List<string>(rk.GetSubKeyNames()); if (!keys.Contains("Aptima")) { rk.CreateSubKey("Aptima", RegistryKeyPermissionCheck.ReadWriteSubTree); } rk = rk.OpenSubKey("Aptima", true); keys = new List<string>(rk.GetSubKeyNames()); if (!keys.Contains("Asim")) { rk.CreateSubKey("Asim", RegistryKeyPermissionCheck.ReadWriteSubTree); } rk = rk.OpenSubKey("Asim", true); keys = new List<string>(rk.GetSubKeyNames()); if (!keys.Contains("DDD")) { rk.CreateSubKey("DDD", RegistryKeyPermissionCheck.ReadWriteSubTree); } System.Security.AccessControl.RegistrySecurity rs = new System.Security.AccessControl.RegistrySecurity(); rs.SetAccessRuleProtection(false, false); rk.SetAccessControl(rs); rk = Registry.LocalMachine.OpenSubKey("SOFTWARE").OpenSubKey("Aptima").OpenSubKey("Asim").OpenSubKey("DDD", true); } rk.SetValue("LicenseKey", licenseKey, RegistryValueKind.String); //System.Security.AccessControl.RegistrySecurity rss = new System.Security.AccessControl.RegistrySecurity(); ////System.Security.AccessControl.RegistryAccessRule rar = new System.Security.AccessControl.RegistryAccessRule("DDDServer", System.Security.AccessControl.RegistryRights.FullControl, System.Security.AccessControl.AccessControlType.Allow); ////rss.SetAccessRule(rar); //rss.SetAccessRuleProtection(false, false); //rk.SetAccessControl(rss); rk.SetValue("InstallDate", String.Format("{0:yyyyMMdd}", DateTime.Now), RegistryValueKind.String); rk.SetValue("LatestLogin", String.Format("{0:yyyyMMdd}", DateTime.Now), RegistryValueKind.String); string keyType = lic.LicenseKeyTypeString.ToUpper(); rk.SetValue("LicenseType", keyType); rk.Close(); return lic; }
public Microsoft.Win32.RegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistrySecurity registrySecurity) { throw null; }
public void SetAccessControl(System.Security.AccessControl.RegistrySecurity registrySecurity) { throw null; }
public RegistryKey CreateSubKey(string subkey, RegistryKeyPermissionCheck permissionCheck, System.Security.AccessControl.RegistrySecurity registrySecurity) { }
public IRegistryKey CreateSubKey(string subkey, Microsoft.Win32.RegistryKeyPermissionCheck permissionCheck, Microsoft.Win32.RegistryOptions registryOptions, System.Security.AccessControl.RegistrySecurity registrySecurity) { return(Wrap(inner.CreateSubKey(subkey, permissionCheck, registryOptions, registrySecurity))); }