AppLocker 进程和交互

注意

适用于企业的 App Control 的某些功能仅适用于特定 Windows 版本。 详细了解 应用控制功能可用性

本文面向 IT 专业人员介绍了 AppLocker 评估和强制实施规则时的过程依赖关系和交互。

AppLocker 如何应用策略

AppLocker 策略是可能包含配置的任何一个强制模式设置的规则集合。 应用后,将在策略中评估每个规则,并根据强制设置和组策略结构应用规则集合。

应用程序标识服务 (appid.sys) 在计算机上强制实施 AppLocker 策略,该服务是评估策略并在 Windows 内核中运行的引擎。 如果服务未运行,则不会强制实施策略。 应用程序标识服务会将二进制文件(即使产品或二进制名称为空)中的信息返回到“本地安全策略”管理单元的结果窗格。

AppLocker 策略根据应用程序标识服务要求以安全描述符格式存储。 它使用文件路径、哈希或完全限定的二进制名称属性来形成对规则的允许或拒绝操作。 每个规则 (ACE) 存储在安全描述符中,并包含以下信息:

  • 安全描述符定义语言中的允许或拒绝 ACE (“XA”或“XD” (SDDL) 形式) 。
  • 此规则适用的 SID (用户安全标识符) 。 (默认为 SDDL.) 中经过身份验证的用户 SID
  • 包含 appid 属性的规则条件。

例如,允许 %windir% 目录中所有文件运行的规则的 SDDL 使用以下格式: XA;;FX;;;AU;(APPID://PATH == "%windir%\\\*")

Appid.sys 读取和缓存 DLL 和可执行文件的有效 AppLocker 策略。 每当应用新策略时,策略转换器任务会通知 appid.sys。 对于其他文件类型,每次进行 SaferIdentifyLevel 调用时,都会读取 AppLocker 策略。

了解 AppLocker 规则

AppLocker 规则是放置在文件上的控件,用于控制它是否针对特定用户或组运行。 为五种不同类型的文件或集合创建 AppLocker 规则:

  • 可执行规则控制用户或组是否可以运行可执行文件。 可执行文件通常具有 .exe 或.com文件扩展名,并应用于应用程序。
  • 脚本规则控制用户或组是否可以运行文件扩展名为 .ps1、.bat、.cmd、.vbs 和 .js 的脚本。
  • Windows Installer 规则控制用户或组是否可以运行文件扩展名为 .msi、.mst 和 .msp 的文件, (Windows Installer 修补程序) 。
  • DLL 规则控制用户或组是否可以运行文件扩展名为 .dll 和 .ocx 的文件。
  • 打包的应用和打包的应用安装程序规则控制用户或组是否可以运行或安装打包的应用。 打包应用安装程序具有 .appx 扩展。

有三种不同类型的条件可以应用于规则:

了解 AppLocker 策略

AppLocker 策略是一组规则集合及其相应的配置强制模式设置应用于一个或多个计算机。

  • 了解 AppLocker 强制设置

    规则强制仅应用于规则集合,而不适用于单个规则。 AppLocker 将规则划分为四个集合:可执行文件、Windows Installer 文件、脚本和 DLL 文件。 规则强制实施选项包括“未配置”、“强制实施规则”或“仅审核”。 所有 AppLocker 规则集合共同构成应用程序控制策略或 AppLocker 策略。 默认情况下,如果未配置强制,并且规则集合中存在规则,则会强制实施这些规则。

了解 AppLocker 和组策略

组策略可用于在单独的对象中创建、修改和分发 AppLocker 策略,或者与其他策略结合使用。

  • 了解组策略中的 AppLocker 规则和强制设置继承

    使用 组策略 分发 AppLocker 策略时,除非强制模式设置为“仅审核”,否则将强制实施包含一个或多个规则的规则集合。 组策略不会覆盖或替换链接组策略对象 (GPO) 中已存在的规则,并且除了现有规则外,还会应用 AppLocker 规则。 AppLocker 在任何允许规则之前处理显式拒绝规则,对于规则强制,将应用对 GPO 的最后一次写入。