woo*_*ddy 7 .net c# registry permissions
以下是我们如何manually为注册表项分配权限:
为注册表项分配权限
打开注册表编辑器 单击要为其分配权限的密钥.
在"编辑"菜单上,单击"权限".
为所选密钥分配访问级别,如下所示:
要授予用户读取密钥内容的权限,但不保存对文件所做的任何更改,请在"名称权限"下为" 读取 "选中"允许"复选框.
要授予用户打开,编辑和获取所选密钥所有权的权限,请在"名称权限"下的" 完全控制"下,选中"允许"复选框.
要授予用户所选密钥的特殊权限,请单击"高级".
所以我的问题是,是否有可能以编程方式进行?比方说,如果我想授予用户对特定子密钥的完全控制权限,我应该如何在C#中编写代码?非常感谢.
RegistrySecurityclass 在这里也很有用。因此,我们可以编写以下代码来对当前用户的注册表项应用访问规则。
RegistrySecurity rs = new RegistrySecurity(); // it is right string for this code
string currentUserStr = Environment.UserDomainName + "\\" + Environment.UserName;
rs.AddAccessRule(new RegistryAccessRule(currentUserStr, RegistryRights.WriteKey | RegistryRights.ReadKey | RegistryRights.Delete | RegistryRights.FullControl, AccessControlType.Allow));
Run Code Online (Sandbox Code Playgroud)
Microsoft.Win32.RegistryKey key;
key = Microsoft.Win32.Registry.LocalMachine;
RegistrySecurity rs = new RegistrySecurity();
rs = key.GetAccessControl();
string currentUserStr = Environment.UserDomainName + "\\" + Environment.UserName;
rs.AddAccessRule(new RegistryAccessRule(currentUserStr, RegistryRights.WriteKey | RegistryRights.ReadKey | RegistryRights.Delete | RegistryRights.FullControl, AccessControlType.Allow));
Run Code Online (Sandbox Code Playgroud)
这将指定用户的访问权限分配给注册表项"key"
| 归档时间: |
|
| 查看次数: |
10411 次 |
| 最近记录: |