实验 3:在 IoT 设备上配置策略设置

在实验室 2 中,我们在自定义映像上启用了设备锁定功能。 除了 Windows IoT 企业版锁定功能外,设备合作伙伴还可以结合使用组策略和功能自定义来实现所需的用户体验。

在此实验室中,我们建议 IoT 设备合作伙伴倾向于使用的一些常见配置设置。 考虑每个单独的配置设置是否适用于设备方案。

控制 Windows 更新

设备合作伙伴的最常见请求之一是控制 Windows 10 IoT 设备上的自动更新。 IoT 设备的特质是,因计划外更新等问题发生意外可能会造成糟糕的设备体验。 考虑如何控制 Windows 更新时应询问的问题:

  • 设备场景是否可接受工作流的任何中断?
  • 在部署之前如何验证更新?
  • 设备本身的更新用户体验是什么?

如果设备无法接受用户体验中断,则应:

  • 考虑将更新限制为仅特定小时
  • 考虑禁用自动更新
  • 请考虑手动或通过受控的第三方解决方案部署更新。

限制对更新的重启

你可以使用活动时间组策略、MDM 或注册表设置将更新限制为仅特定时间。

  1. 打开组策略编辑器 (gpedit.msc) 并导航到“计算机配置”\“管理模板”\“Windows 组件”\“Windows 更新”,然后打开“在使用时段关闭对更新的自动重启”策略设置。 启用该策略时,你可以设置使用时段的开始和结束时间。
  2. 设置“使用时段”窗口的“开始”和“结束”时间。 例如,将“使用时段”设置为从凌晨 2:00 开始到凌晨 4:00 结束。 这允许系统针对凌晨 2:00 到凌晨 4:00 之间的更新重启。

控制来自 Windows 更新客户端的 UI 通知

可将设备配置为隐藏 Windows 更新的 UI 体验,同时让服务本身在后台运行并更新系统。 Windows 更新客户端仍遵守为配置自动更新而设置的策略,此策略控制该体验的 UI 部分。

  1. 打开“组策略编辑器”(gpedit.msc) 并导航到“Computer Configuration\Administrative Templates\Windows Components\Windows Update\Display”选项以更新通知
  2. 将策略设置为已启用。
  3. 将“指定更新通知显示选项”指定为 1 或 2。

注意

将值设置为 1 可隐藏除重启警告之外的所有通知,或设置为 2 以隐藏所有通知,包括重启警告。

完全禁用 Windows 自动更新

安全性和稳定性是 IoT 项目成功的核心,Windows 更新提供更新以确保 Windows 10 IoT 企业版具有最新的适用安全性和稳定性更新。 但是,你可能有一个设备方案,其中必须手动处理更新 Windows。 对于这种类型的情况,我们建议禁用通过 Windows 更新的自动更新。 在以前版本的 Windows 设备中,合作伙伴可以停止和禁用 Windows 更新服务,但这不再是禁用自动更新的受支持方法。 Windows 10 有许多策略,允许你以多种方式配置Windows 更新。

若要完全禁用通过 Windows 更新进行 Windows 10 自动更新,请执行以下操作。

  1. 打开组策略编辑器 (gpedit.msc) 并导航到“计算机配置”\“管理模板”\“Windows 组件”\“Windows 更新”\“配置自动更新”。
  2. 将策略显式设置为“禁用”。 如果此设置设置为“已禁用”,则必须手动下载和安装来自Windows 更新的任何可用更新,你可以在更新和安全>Windows 更新下的设置应用中执行此操作。

禁用对 Windows 更新用户体验的访问

在某些情况下,配置自动更新不足以保留所需的设备体验。 例如,最终用户可能仍然可以访问 Windows 更新设置,这将允许通过 Windows 更新进行手动更新。 可以配置组策略以通过设置禁止访问 Windows 更新。

要禁止访问 Windows 更新,请执行以下步骤:

  1. 打开组策略编辑器 (gpedit.msc) 并导航到“计算机配置”\“管理模板”\“Windows 组件”\“Windows 更新”\“删除使用所有 Windows 更新功能的权限”。
  2. 将此策略设置为“启用”以阻止用户使用“检查更新”选项。 注意:任何后台更新扫描、下载和安装将继续按配置工作。 此策略只是阻止用户访问手动检查设置。 使用上一部分中的步骤还可以禁用扫描、下载和安装。

重要

请确保为设备制定精心设计的服务策略。 如果设备没有以其他方式获取更新,则禁用 Windows 更新功能会使设备处于易受攻击的状态。

阻止通过 Windows 更新安装驱动程序

有时,从 Windows 更新安装的驱动程序可能会导致设备体验出现问题。 以下步骤禁止Windows 更新在设备上下载和安装新驱动程序。

  1. 打开组策略编辑器 (gpedit.msc) 并导航到“计算机配置”\“管理模板”\“Windows 组件”\“Windows 更新”\“不要在 Windows 更新中包括驱动程序”。
  2. 启用此策略,告知 Windows 不要在 Windows 质量更新中包括驱动程序。

Windows 更新摘要

可通过多种方式配置 Windows 更新,但并非所有策略都适用于所有设备。 通常,IoT 设备需要特别注意设备上使用的服务和管理策略。 如果服务策略是通过策略禁用所有Windows 更新功能,则以下步骤提供要配置的策略的组合列表。

  1. 打开组策略编辑器(gpedit.msc)并导航到计算机配置 -> 管理员istrative 模板 -> 系统 -> 设备安装并设置以下策略:
    1. 将“指定设备驱动程序更新的搜索服务器”指定为“已启用”,将“选择更新服务器”设置为“搜索托管服务器”
    2. 将“指定设备驱动程序源位置的搜索顺序”指定为“已启用”,将“选择搜索顺序”设置为“不要搜索 Windows 更新”
  2. 在组策略编辑器中,导航到计算机配置 -> 管理员主模板 -> Windows 组件 -> Windows 更新并设置以下策略:
    1. 将“配置自动更新”设置为“已禁用”
    2. 将“不要在 Windows 更新中包括驱动程序”设置为“已启用”
  3. 在组策略编辑器中,导航到“计算机配置”->“管理模板”->“系统”->“Internet 通信管理”->“Internet 通信设置”,并将“关闭对所有 Windows 更新功能的访问”设置为“已启用”
  4. 在组策略编辑器中,导航到“计算机配置”->“管理模板”->“Windows 组件”->“Windows 更新”->“显示更新通知选项”,并将该策略设置为“已启用”,同时将“指定更新通知显示选项”设置为 2

将系统配置为隐藏蓝屏

出于多种原因,系统上可能会发生 bug 检查(蓝屏或 BSOD)。 对于 IoT 设备,如果发生这些错误,请务必隐藏这些错误。 系统仍可以收集用于调试的内存转储,但用户体验本身应避免显示 bug 检查错误屏幕。 可将系统配置为在出现操作系统错误时将“蓝屏”替换为空白屏幕。

  1. 在 IoT 设备上打开注册表编辑器,并导航到 HKLM\SYSTEM\CurrentControlSet\Control\CrashControl
  2. 添加一个名为 DisplayDisabled 的新注册表项,其类型为 DWORD(32 位),值为 1。

配置通知、toast 和弹出窗口

IoT 设备通常会消除在电脑方案中有作用的常见 Windows 对话框,但可能会干扰 IoT 设备的用户体验。 禁用不需要的对话框的最简单方法是通过 Shell 启动程序或分配的访问权限使用自定义 Shell。 如果自定义 Shell 不是适当的选择,可以设置策略、设置和注册表微调的组合,以禁用不需要的弹出窗口和通知。

通知

在某些情况下,禁用单个通知非常有用。 例如,如果设备是平板电脑,则应为用户显示“节电模式”通知,而 OneDrive 或照片等其他通知则应隐藏。 你还可以确定设备是否应禁止所有通知,不管提供这些通知的操作系统组件是什么。

隐藏所有通知

禁用通知的一种方法是使用 Windows 的“免打扰时间”功能。 “免打扰时间”的工作方式类似于许多智能手机上的同类功能,它们会在特定的时间(通常是夜间)禁止通知。 在 Windows 10 中,可将免打扰时间设置为 24x7,使通知永不显示。

启用 24x7 安静小时数

  1. 打开组策略编辑器 (gpedit.msc) 并导航到“用户配置”->“管理模板”->“通知”
  2. 启用“设置每日免打扰时间的开始时间”策略,并将值设置为 0
  3. 启用“设置每日免打扰时间的结束时间”策略,并将值设置为 1439(每天有 1440 分钟)

注意

“用户配置”->“管理模板”->“通知”中还提供了其他策略,让你可以更细致地禁用确切的通知。 这些选项在某些设备方案中可能很有用。

消息框默认回复

这是一项注册表更改,它通过让系统自动选择对话框(确定或取消)上的默认按钮来禁用 MessageBox 类框。 如果设备合作伙伴无法控制的第三方应用程序显示 MessageBox 样式对话框,这可能很有用。 可以在消息框默认回复中了解此注册表值。

禁用 MessageBox 类框
  1. 以管理员身份打开注册表编辑器
  2. 在 HKLM\System\CurrentControlSet\Control\Error Message Instrument 下创建一个新的 Dword 注册表值,其值名为 EnableDefaultReply
  3. 将 EnableDefaultReply 值的数据设置为 0
  4. 测试方案以确保其按预期工作

安全基线

从 Windows 10 的第一个版本开始,每个 Windows 版本都随附了一组称作“安全基线”的策略。 安全基线是 Microsoft 根据 Microsoft 安全工程团队、产品组、合作伙伴和客户的反馈推荐的一组配置设置。 安全基线是在 IoT 设备上快速启用推荐的安全设置的很好方式。

注意:需要认证的设备(例如 STIG)使用安全基线作为起点可以获益。 安全基线作为安全合规工具包的一部分提供

可以从下载中心下载安全合规工具包

  1. 在上面的链接上选择“ 下载 ”。 选择“Windows 10 Version xxxx Security Baseline.zip”和“LGPO.zip”。 请务必选择与要部署的 Windows 10 版本匹配的版本。

  2. 在 IoT 设备上解压缩“Windows 10 Version xxxx Security Baseline.zip”文件和“LGPO.zip”文件。

  3. 将 LGPO.exe 复制到“Windows 10 Version xxxx Security Baseline”文件夹的“Local_Script\Tools”子文件夹中。 安全基线安装脚本需要 LGPO,但必须单独下载该程序。

  4. 在管理命令提示符下运行:

    Client_Install_NonDomainJoined.cmd
    

    或者,如果 IoT 设备将要加入 Active Directory 域:

    Client_Install_DomainJoined.cmd
    
  5. 在出现是否运行脚本的提示时按 Enter,然后重启 IoT 设备。

预期

许多设置已包含为安全基线的一部分。 在“文档”文件夹中,可以找到一个 Excel 电子表格,该电子表格概述了基线设置的所有策略。 你马上会发现,用户帐户密码复杂性已更改而不再使用默认设置,因此你可能需要更新系统上的或作为部署一部分的用户帐户密码。 此外,为 USB 驱动器数据访问配置了策略。 现在,从系统复制数据默认会受到保护。 继续探索安全基线添加的其他设置。

Microsoft Defender

许多 IoT 设备方案中需要防病毒保护,尤其是功能更全面且运行 Windows 10 IoT 企业版等操作系统的设备。 对于展台、零售 POS、ATM 等设备,Windows 10 IoT 企业版安装中默认会包含并启用 Microsoft Defender。 你可能需要在方案中修改默认的 Microsoft Defender 用户体验。 例如,禁用有关执行的扫描的通知,甚至禁用计划的深度扫描以便仅使用实时扫描。 以下策略可用于防止 Microsoft Defender 创建不需要的 UI。

  1. 打开组策略编辑器(gpedit.msc)并导航到计算机配置 -> 管理员istrative 模板 - Windows 组件 ->> Microsoft Defender 防病毒 -> 扫描和设置:
    1. 将“在运行计划扫描之前检查最新病毒定义和间谍软件定义”设置为“已禁用”
    2. 将“指定扫描期间的 CPU 使用率最大百分比”设置为 5
    3. 将“启用弥补完全扫描”设置为“已禁用”
    4. 将“启用弥补快速扫描”设置为“已禁用”
    5. 将“创建系统还原点”设置为“已禁用”
    6. 将“定义在其后强制执行弥补扫描的天数”设置为 20(这是一项以防万一的设置,如果启用了弥补扫描,则不应指定此设置)
    7. 将“指定要用于计划扫描的扫描类型”设置为“快速扫描”
    8. 将“指定在星期几运行计划的扫描”设置为“0x8 (从不)”
  2. 在组策略编辑器中,导航到计算机配置 -> 管理员主模板 - Windows 组件 ->> Microsoft Defender 防病毒 -> 签名汇报并设置:
    1. 将“定义间谍软件定义被视为过期前的天数”设置为 30
    2. 将“定义病毒定义被视为过期前的天数”设置为 30
    3. 将“启用签名更新后扫描”设置为“已禁用”
    4. 将“启动时启动定义更新”设置为“已禁用”
    5. 将“指定在星期几检查定义更新”设置为“0x8 (从不)”
    6. 将“定义在其后需要执行弥补定义更新的天数”设置为 30

“Windows 组件”->“Microsoft Defender 防病毒”中还提供了其他策略。 请检查每项设置说明,查看它是否适用于你的 IoT 设备。

后续步骤

创建针对所需用户体验定制的映像后,接下来可以捕获该映像,以便可将其部署到任意数量的设备上。 实验 4 将介绍如何准备要捕获的映像,然后将其部署到设备。