您的位置:首页 > 电脑教程 > 电脑常识 返回首页

如何在注册表中添加新的权限项?

时间:2026-10-18 11:47:42  来源:原创

✅ 图形界面(regedit)添加新权限项(访问控制条目)

前提:管理员身份运行 regedit;先导出注册表项备份;部分系统项要先修改所有者,否则添加按钮灰色 目标:给注册表项新增一条权限规则(比如添加 Administrators 组)

  1. 定位目标注册表项 → 右键 → 权限
  2. 在弹出权限窗口,点右下角 高级(进入高级安全设置)
  3. 在【权限条目】区域,点 添加(新建权限规则)
  4. 点击 选择主体(选择用户 / 用户组)
    • 在输入框填写:Administrators
    • 点【检查名称】,文字出现下划线代表识别成功 → 确定
  5. 配置基础权限(最小权限原则,按需勾选)
    • ✅ 读取:只查看
    • ✅ 设置值、查询值:读写注册表参数(推荐优先这个,不要直接全给完全控制)
    • ✅ 完全控制:读、写、删除、修改权限、修改所有者

    ❗不要勾选拒绝 (Deny),拒绝优先级最高,极易锁死注册表项

  6. 继承设置(关键)
    • 仅当前这一项:不勾选【使用可从此对象继承的权限项目替换所有子对象的权限项目】(推荐,安全)
    • 需要整条分支子项一起应用:才勾选(风险很高)
  7. 点击【确定】→【应用】保存,新权限条目添加完成

补充:如果主体(用户 / 组)已经在列表里,不需要点添加,直接选中主体,修改下方权限勾选即可。

两种入口区别

  • 简易权限窗口(权限主界面):点【添加】,快速添加主体并勾选基础权限,适合简单场景
  • 高级安全设置里面的【添加】:支持精细化权限、继承设置,推荐使用高级界面

⚡ PowerShell 方式(管理员 PowerShell,批量脚本添加权限项)

# 目标注册表路径
 = "Registry::HKEY_LOCAL_MACHINESOFTWARETestKey"
# 获取当前ACL
 = Get-Acl 
# 新建权限规则:给 Administrators 允许完全控制
 = New-Object System.Security.AccessControl.RegistryAccessRule(
    "BUILTINAdministrators",
    "FullControl",
    "ContainerInherit,ObjectInherit",
    "None",
    "Allow"
)
# 将新权限项加入ACL
.AddAccessRule()
# 写入注册表
Set-Acl -Path  -AclObject 

参数说明:

  • FullControl:完全控制;可替换为Read/QueryValues,SetValue精细化权限
  • Allow= 允许;严禁随意使用Deny

⚠️ 常见问题

  1. 添加按钮灰色不可点击 原因:当前账户没有该项的【更改权限】权限;需要先修改所有者,拿到所有权后才能新增权限条目。
  2. 检查名称找不到 Administrators 拼写错误、多余空格;标准组名:Administrators
  3. 添加完权限依然拒绝访问 存在旧的 Deny(拒绝)条目,拒绝规则优先级高于允许,需要先删除拒绝条目。
  4. 勾选替换子对象时报错 部分子项有独立 ACL 保护,无法批量写入;不要勾选递归,逐个处理。

🚨 安全提醒

  1. 新增权限遵循最小权限原则,非必要不给完全控制。
  2. 不要添加Everyone完全控制,会造成巨大安全漏洞。
  3. 调试结束,建议删除新增权限、恢复原始 ACL,所有者改回 TrustedInstaller。
  4. SAM、SECURITY 分支严禁修改 ACL,极易系统账户损坏无法登录。
上一个电脑教程:如何在注册表中删除权限项?
下一个电脑教程:注册表权限分配可能带来哪些风险?