注册表 hkcu 和 hklm 谁优先,组策略 计算机配置和用户配置 谁优先?

目录

hkcu 和 hklm 的相同注册表项谁优先?

但是网上说在组策略里相同项,若计算机策略和用户策略冲突,则计算机设置优先。这和你刚才说有结果相反

我大概有点明白,除了,HKEY_LOCAL_MACHINE\Software\Policies,HKEY_CURRENT_USER\Software\Policies\里的内容按计算机策略优先,其它注册表项按 hkcu优先,对吗

HKLM的优先级高于HKCU的例子有吗

总结:



hkcu 和 hklm 的相同注册表项谁优先?

Tips: 这里说的优先,是说最后由谁决定。即 hkcu优先,则hkcu 覆盖 hklm的设置,hkcu决定最后结果。

?您好,这是必应。根据搜索结果,HKCU 和 HKLM 是注册表的两个根项,分别代表当前用户和本地计算机。如果两个根项中有相同的注册表项,那么 HKCU 的优先级高于 HKLM。¹² 您可以使用 reg 命令来添加、删除或修改注册表项。¹³

源: 与必应的对话, 2023/3/12(1) reg add | Microsoft Learn. https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/reg-add 访问时间 2023/3/12.
(2) 注册表:HKCR, HKCU, HKLM, HKU, HKCC,注册表中常用的5种数据类型_up_upup的博客-CSDN博客. https://blog.csdn.net/up_upup/article/details/108679443 访问时间 2023/3/12.
(3) reg save | Microsoft Learn. https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/reg-save 访问时间 2023/3/12.

:: ---------------------------------------------------------------------------------------------------------------------

但是网上说在组策略里相同项,若计算机策略和用户策略冲突,则计算机设置优先。这和你刚才说有结果相反

您好,这是必应。根据搜索结果,注册表项和组策略设置是不同的概念。注册表项是存储系统和应用程序的系统信息的数据库,而组策略设置是控制用户和计算机的配置的策略。²³ 如果组策略里有相同的设置,那么计算机策略优先于用户策略,这是因为计算机策略在用户策略之前应用。 但是,这并不影响注册表项的优先级,因为注册表项是由组策略设置修改的,而不是由组策略设置替代的。¹²

源: 与必应的对话, 2023/3/12(1) (Windows 10) 配置安全策略设置 - Windows security | Microsoft Learn. https://learn.microsoft.com/zh-cn/windows/security/threat-protection/security-policy-settings/how-to-configure-security-policy-settings 访问时间 2023/3/12.
(2) 如果 计算机策略与用户策略发生冲突 时,以什么策略优先. https://zhidao.baidu.com/question/1447483285513001580.html 访问时间 2023/3/12.
(3) Windows) (用户帐户控制组策略和注册表项设置 | Microsoft Learn. https://learn.microsoft.com/zh-cn/windows/security/identity-protection/user-account-control/user-account-control-group-policy-and-registry-key-settings 访问时间 2023/3/12.

:: ---------------------------------------------------------------------------------------------------------------------

我大概有点明白,除了,HKEY_LOCAL_MACHINE\Software\Policies,HKEY_CURRENT_USER\Software\Policies\里的内容按计算机策略优先,其它注册表项按 hkcu优先,对吗

您好,这是必应。根据搜索结果,HKEY_LOCAL_MACHINE\Software\Policies 和 HKEY_CURRENT_USER\Software\Policies 是存储组策略设置的注册表项,它们可以用来控制用户和计算机的配置。²³⁴ 如果这两个注册表项中有相同的设置,那么 HKEY_LOCAL_MACHINE\Software\Policies 的优先级高于 HKEY_CURRENT_USER\Software\Policies,这是因为计算机策略优先于用户策略。²⁴ 其他注册表项的优先级则取决于它们的来源和作用,一般来说,HKCU 的优先级高于 HKLM。¹²

源: 与必应的对话, 2023/3/12(1) User Account Control Group Policy and registry key settings. https://learn.microsoft.com/en-us/windows/security/identity-protection/user-account-control/user-account-control-group-policy-and-registry-key-settings 访问时间 2023/3/12.
(2) Detailed guide to the ExtensionSettings policy | Microsoft Learn. https://learn.microsoft.com/en-us/deployedge/microsoft-edge-manage-extensions-ref-guide 访问时间 2023/3/12.
(3) Implementing Registry-based Policy | Microsoft Learn. https://learn.microsoft.com/en-us/previous-versions/windows/desktop/policy/implementing-registry-based-policy 访问时间 2023/3/12.
(4) Cómo acceder a HKEY_LOCAL_MACHINE (En 4 Pasos) | Techlandia. https://techlandia.com/acceder-hkeylocalmachine-como_189673/ 访问时间 2023/3/12.

:: ---------------------------------------------------------------------------------------------------------------------

你好,你说 “其他注册表项的优先级则取决于它们的来源和作用,一般来说,HKCU 的优先级高于 HKLM。” 能帮我取几个例子吗? 有什么例子 HKCU 高于 HKLM,有什么例子HKLM 高于 HKCU

您好,这是必应。根据搜索结果,一个例子是 HKCU 下的 software 键,它存储了当前用户对软件的配置信息,而 HKLM 下的 software 键,它存储了软件的安装信息和对所有用户设置的配置信息。² 如果两个键中有相同的设置,那么 HKCU 下的 software 键的优先级高于 HKLM 下的 software 键,这是因为当前用户的配置信息优先于所有用户的配置信息。²³ 另一个例子是 HKCU 下的 Control Panel 键,它存储了当前用户的控制面板设置,而 HKLM 下的 Control Panel 键,它存储了系统的控制面板设置。¹ 如果两个键中有相同的设置,那么 HKCU 下的 Control Panel 键的优先级高于 HKLM 下的 Control Panel 键,这是因为当前用户的控制面板设置优先于系统的控制面板设置。¹

源: 与必应的对话, 2023/3/12(1) HKCU下的software与HKLM的software有什么区别? - 知乎. https://www.zhihu.com/question/317931895 访问时间 2023/3/12.
(2) Do HKLM registries take precedence over HKCU for system policies?. https://superuser.com/questions/1654894/do-hklm-registries-take-precedence-over-hkcu-for-system-policies 访问时间 2023/3/12.
(3) 注册表:HKCR, HKCU, HKLM, HKU, HKCC,注册表中常用的5种数据类型_up_upup的博客-CSDN博客. https://blog.csdn.net/up_upup/article/details/108679443 访问时间 2023/3/12.

:: ---------------------------------------------------------------------------------------------------------------------

HKLM的优先级高于HKCU的例子有吗

您好,这是必应。根据搜索结果,一个例子是 HKLM 下的 System 键,它存储了系统的启动和运行设置,而 HKCU 下的 System 键,它存储了当前用户的系统设置。¹ 如果两个键中有相同的设置,那么 HKLM 下的 System 键的优先级高于 HKCU 下的 System 键,这是因为系统的启动和运行设置优先于当前用户的系统设置。¹ 另一个例子是 HKLM 下的 Software\\Microsoft\\VisualStudio 键,它存储了 Visual Studio 的安装和配置信息,而 HKCU 下的 Software\\Microsoft\\VisualStudio 键,它存储了当前用户对 Visual Studio 的配置信息。² 如果两个键中有相同的设置,那么 HKLM 下的 Software\\Microsoft\\VisualStudio 键的优先级高于 HKCU 下的 Software\\Microsoft\\VisualStudio 键,这是因为 Visual Studio 的安装和配置信息优先于当前用户对 Visual Studio 的配置信息。²

源: 与必应的对话, 2023/3/12(1) Registry Hives - HKCR, HKCU, HKLM, HKU, HKCC, and HKPD. http://herongyang.com/Windows/Registry-Hives-HKCR-HKCU-HKLM-HKU-HKCC-HCPD.html 访问时间 2023/3/12.
(2) HKLM VS HKCU - social.msdn.microsoft.com. https://social.msdn.microsoft.com/Forums/vstudio/en-US/d2286f2a-310d-499e-99c1-efa2ae99ed07/hklm-vs-hkcu?forum=vsx 访问时间 2023/3/12.
(3) HKCU下的software与HKLM的software有什么区别? - 知乎. https://www.zhihu.com/question/317931895 访问时间 2023/3/12.
(4) 注册表:HKCR, HKCU, HKLM, HKU, HKCC,注册表中常用的5种数据类型_up_upup的博客-CSDN博客. https://blog.csdn.net/up_upup/article/details/108679443 访问时间 2023/3/12.
(5) 注册表RootKey简写:HKCR, HKCU, HKLM, HKU, and HKCC. https://blog.csdn.net/liuyukuan/article/details/102943388 访问时间 2023/3/12.
:: ---------------------------------------------------------------------------------------------------------------------

总结:

    Windows 11 企业版 同名项的优先权规则是:
    1.  组策略 > 界面设置。 组策略里,计算机配置 > 用户配置。 界面设置所加载的注册表项里, HKCU 和 HKLM 要根据实际情况.
    2.  HKCU 和 HKLM 是注册表的两个根项,分别代表当前用户和本地计算机。
        如果两个根项中有相同的注册表项,那么大多数情况下 HKCU 的优先级高于 HKLM。 如 HKCU\Software、 HKCU\Control Panel。
        但也有例外,如 HKLM\System、 HKLM\Software\\Microsoft\\VisualStudio, 都是 HKLM 优先。
    3.  针对多机网络,组策略里 GPO 父项 < GPO 子项,子项重写父项的规则。 
    4.  针对个人单机,组策略里 GPT 父项 > GPT 子项,父项遮盖子项的规则。 界面设置也和组策略使用同样的规则。
        如: 计算机配置 - 系统 - Internet 通信管理 - 限制 Internet 通信 - 已启用 时
             计算机配置 - 系统 - Internet 通信管理 - Internet 通信设置 - 关闭帮助体验改善计划 等项设置均无效。
    5.  操作组策略,会把修改结果记录到磁盘文件和注册表值。 这个操作是单向的。 不能通过修改磁盘文件或注册表值,来改变组策略。 
        测试过了,使用 gpupdate+重启组策略 也没有实现双向。
        文件位置:
        C:\Windows\System32\GroupPolicy\gpt.ini
        C:\Windows\System32\GroupPolicy\Machine\Registry.pol
        C:\Windows\System32\GroupPolicy\User\Registry.pol
    当然,这些是按系统默认规则,也可以人为改变这些规则。 参考:
    
    https://blog.51cto.com/addison/350557#组策略系列之二:组策略的加载过程
    https://blog.51cto.com/jary3000/122093#组策略系列之三:用户或计算机应用组策略的前提

    【组策略系列之三:用户或计算机应用组策略的前提】
    一、 概念
        GPO: 组策略对象
        GPC: 组策略容器, 分别有 Local、 Site、 Domain、 OU(组织单位)
        GPT: 组策略模板, 如: 计算机配置、用户配置
    四、 GPO的冲突处理
        1) 计算机策略覆盖用户策略(如果同一条策略,计算机和用户策略冲突)
        2) 不同容器上的策略产生冲突,子容器上的GPO优先级高。
        3) 同一容器上多个GPO产生冲突时,处于GPO列表最高位置的GPO优先级最高。(链接顺序为 1 的最高,它最先链接,但最后加载。这是原作者的意思。)
        总体原则:后执行的优先级最高。
    5.  组策略的生效时间:
        a. 计算机策略设置:计算机启动、手动刷新(gpupdate /force)、90-120分钟后台周期刷新。
        b. 用户策略设置:用户登录、手动刷新(gpupdate /force)、90-120分钟后台刷新。
        c. DC的策略设置:5分钟后台周期刷新。
    6.  累加性:如果各级容器的GPO的策略设置没有冲突,则累加。(默认状态下)
                如果各级容器的GPO的策略设置发生冲突,则以范围小的GPO策略为准。(默认)
                若一个容器上链接多个GPO,设置不冲突,则累加;若设置冲突,则以列表中最上面的优先(即最后执行的优先)(默认)
    7.  疑问与总结进阶:
        同时两个账户在线: Administrator、 Test
        计算机策略: Administrator、 Test 都设置为 已禁用。
        用户策略:            Test - 允许诊断数据 - 已启用 - 发送所需诊断数据
                    Administrator - 允许诊断数据 - 已启用 - 发送可选诊断数据
                    结论: 两个账户的界面上,均是 发送可选诊断数据 按钮灰色不可选中。重启后,两个账户的界面上,均是 发送可选诊断数据 可选状态。
        用户策略:   Administrator - 允许诊断数据 - 已启用 - 发送所需诊断数据
                    Test          - 允许诊断数据 - 已启用 - 发送可选诊断数据
                    结论: 两个账户的界面上,均是 发送可选诊断数据 按钮灰色不可选中。重启后,两个账户的界面上,均是 发送可选诊断数据 可选状态。
        总结: 
        (1) 用户策略覆盖计算机策略。
        (2) 只要有一个用户设置为 发送所需诊断数据 它就可以覆盖所有用户的 发送可选诊断数据,并且 【不能被重新修改为 发送可选诊断数据】。
            均尝试过重启组策略和 gpupdate /force。
            但只要最后一次用户设置是 发送可选诊断数据 ,在重启后,按钮可恢复为激活状态。 
            猜测 gpedit.msc 并不会区分哪个用户,用户策略是改变所有用户的。
    8. 疑问与总结高阶:

单个账户: 诊断数据关闭(不推荐) 发送所需诊断数据 发送可选诊断数据 禁用 未配置
0 诊断数据关闭(不推荐) 0 0 0 0 0
1 发送所需诊断数据 0 1 1 1 1
3 发送可选诊断数据 0 1 3 3 3
- 禁用 0 1 3
- 未配置 0 1 3

       计算机和用户策略相同下,当然不用区分。 
       若 计算机策略 为 0, 用户策略 为 1,重启结果为 0。
       若 计算机策略 为 1, 用户策略 为 0,重启结果为 0。
       其它依次实验,结果遵循这一规律。
       总结:
            诊断数据关闭(不推荐) > 发送所需诊断数据 > 发送可选诊断数据 > (禁用 = 未配置)
            注意!(禁用 = 未配置) 未对设置界面的按钮状态进行重置。所以,你看到的是上一次已启用中的选项状态。
            GPO 是对象,而上面是对象的值。它们与下面的规则很相似:
            “同一容器上多个GPO产生冲突时,处于GPO列表最高位置的GPO优先级最高。”(链接顺序为 0 的最高,它最先链接,但最后加载。这是原作者的意思。)
            
    9.  待加入
        @GPEdit.msc - 本地计算机策略 - 计算机配置 - 管理模板 - Windows 组件 - 数据收集和预览版本 - 配置诊断数据选择加入设置用户界面

你可能感兴趣的:(Windows,windows,注册表,组策略)