使用 ExtensionSettings 策略配置扩展的详细指南
Microsoft Edge 提供了多种方法来管理扩展。 一种常见方法是在 Windows 组策略编辑器或 Windows 注册表中使用 ExtensionSettings 策略在一处通过 JSON 字符串设置多个策略。
注意
Microsoft Edge 管理服务是Microsoft 365 管理中心的一种专用且简化的管理工具,现已推出。 了解详细信息。
开始之前
决定是要在 ExtensionSettings 策略中设置所有扩展管理设置,还是通过其他策略设置这些控件。
ExtensionSettings 策略可以覆盖已在组策略其他位置设置的其他策略,包括以下策略:
- ExtensionAllowedTypes
- ExtensionInstallBlocklist
- ExtensionInstallForcelist
- ExtensionInstallSources
- ExtensionInstallAllowlist
ExtensionSettings 策略字段
此策略可以控制更新 URL(从中下载扩展以供初始安装)和“阻止”权限等设置。 还可以使用此策略来确定不允许运行的权限。 下表描述了可用的策略字段。
策略域 | 描述 |
---|---|
allowed_types | 只能用于配置默认配置*。 指定允许用户在 Microsoft Edge 上安装的应用或扩展类型。 值是字符串列表,其中每个字符串应为以下类型之一:“extension”、“theme”、“user_script”和“hosted_app”。 |
blocked_install_message | 如果阻止用户安装某些扩展,可以指定在用户尝试安装这些扩展时在浏览器中显示的自定义消息。 将文本追加到在 Microsoft Edge 加载项网站上显示的一般错误消息。 例如,你可以告诉用户如何联系其 IT 部门或特定扩展不可用的原因。 消息的长度最多可为 1000 个字符。 |
blocked_permissions | 防止用户安装和运行请求组织不允许的某些 API 权限的扩展。 例如,可以阻止访问 Cookie 的扩展。 如果扩展需要你阻止的权限,则用户无法安装它。 如果用户以前安装了扩展,则不会加载该扩展。 如果扩展包含阻止权限的可选要求,它将照常安装。 然后,当扩展正在运行时,会自动拒绝被阻止的权限。 有关可用权限的列表,请参阅声明权限。 |
file_url_navigation_allowed | Edge 浏览器版本 120 及更高版本 允许扩展导航到指定的文件 URL。 |
installation_mode | 控制是否以及如何将指定的扩展添加到 Microsoft Edge。 可以将安装模式设置为以下选项之一: - allowed :用户可以安装扩展。 如果未定义安装模式,则此设置为默认设置。- blocked :用户无法安装扩展。- force_installed :无需用户交互即可自动安装扩展。 用户无法删除它。 还需要使用“update_url”定义扩展下载位置。 注意:不能将此设置与 * 一起使用,因为Microsoft Edge 不知道要自动安装哪个扩展。- normal_installed :无需用户交互即可自动安装扩展。 用户可以禁用它。 还需要使用“update_url”定义扩展下载位置。 注意:不能将此设置与 * 一起使用,因为Microsoft Edge 不知道要自动安装哪个扩展。- removed :用户无法安装扩展。 如果用户以前安装了该扩展,Microsoft Edge 会将其删除。 |
install_sources | 只能用于配置默认配置*。 指定允许哪些 URL 安装扩展。 这些模式必须允许 *.crx 文件的位置和启动下载的页面(即引用者)。 有关 URL 模式示例,请参阅匹配模式。 |
minimum_version_required | Microsoft Edge 禁用版本早于指定最低版本的扩展,包括强制安装的扩展。 版本字符串的格式与扩展清单中使用的格式相同。 |
update_url | force_installed 仅适用于 和 normal_installed 。 指定 Microsoft Edge 应从何处下载扩展。 如果扩展托管在 Microsoft Edge 加载项网站中,请使用以下位置:https://edge.microsoft.com/extensionwebstorebase/v1/crx 。Microsoft Edge 使用为初始扩展安装指定的 URL。 对于后续扩展更新,Microsoft Edge 使用扩展清单中的 URL。 |
runtime_allowed_hosts | 允许扩展与指定网站交互,即使它们也在runtime_blocked_hosts中定义。 最多可以指定 100 个条目。 将放弃额外的条目。 主机模式格式类似于 匹配模式, 但无法定义路径。 例如: - ://.example.com - ://example.—支持 eTLD 通配符 |
runtime_blocked_hosts | 阻止扩展与指定的网站交互或修改网站。 修改包括阻止 JavaScript 注入、Cookie 访问、Web 请求修改。 最多可以指定 100 个条目。 将放弃额外的条目。 主机模式格式类似于无法定义路径的匹配模式。 例如: - ://.example.com - ://example.—支持 eTLD 通配符 |
override_update_url | 可从 Microsoft Edge 93 获取 如果此字段设置为 true ,Microsoft Edge 使用 ExtensionSettings 策略或 ExtensionInstallForcelist 策略中指定的更新 URL 进行后续扩展更新。如果此字段未设置或设置为 false ,Microsoft Edge 将使用扩展清单中指定的 URL 进行更新。 |
toolbar_state | 可从 Microsoft Edge 103 获取 通过此策略设置,可以强制向工具栏显示已安装的扩展。 默认状态适用于所有 default_hidden 扩展。 此设置可能具有以下值:- force_shown :可以选择在工具栏上强制显示已安装的扩展。 用户无法从工具栏中隐藏指定的扩展图标。- default_hidden :这是浏览器上所有已安装扩展的默认设置。- default_shown :在此状态下,扩展在安装时显示在工具栏上。 如果需要,用户可以在工具栏中隐藏它们。 |
sidebar_auto_open_blocked | 可从 Microsoft Edge 119 获取 如果此字段设置为 true ,则将阻止具有指定扩展 ID 的任何边栏应用自动打开。 |
全局范围允许以下密钥 (*) :
- blocked_permissions
- installation_mode - 仅
"blocked"
、"allowed"
或"removed"
是此作用域中的有效值。 - runtime_blocked_hosts
- blocked_install_message
- allowed_types
- runtime_allowed_hosts
- install_sources
单个扩展范围允许使用以下密钥:
- blocked_permissions
- minimum_version_required
- blocked_install_message
- installation_mode -
"blocked"
、"allowed"
、"removed"
、"force_installed"
和"normal_installed"
是可能的值。 - runtime_allowed_hosts
- update_url
- override_update_url
- runtime_blocked_hosts
- toolbar_state
- sidebar_auto_open_blocked
在更新 URL 范围内允许使用以下密钥:
- blocked_permissions
- installation_mode - 仅
"blocked"
、"allowed"
或"removed"
是此作用域中的有效值。
在 Windows 组策略编辑器中使用 JSON 字符串进行配置
使用 GPO 使用扩展设置策略的步骤假定你已导入 adM/ADMX for Microsoft Edge 策略。
- 打开组策略编辑器,转到 Microsoft Edge > 扩展 > 配置扩展管理设置策略。
- 启用策略,并在文本框中输入其压缩的 JavaScript 对象表示法 (JSON) 数据,作为一行不换行符。
- 若要验证策略并将其压缩为单行,请使用 JSON 压缩工具。
为扩展设置策略正确设置 JSON 格式
你需要了解此策略的两个部分-默认范围和单个范围。 对于没有其自身作用域的扩展,默认范围为 catch-all。 单个范围仅应用于该扩展。
默认范围由星号 (*) 标识。 下一个示例定义了默认范围和单个扩展范围。
{
"*": {},
"nckgahadagoaajjgafhacjanaoiihapd": {}
}
扩展将仅从一个范围获取其设置。 如果该扩展具有单独的扩展范围,则这些范围将是应用于该扩展的设置。 如果不存在单个扩展范围,则扩展将使用默认范围。
下一个 JSON 示例阻止任何扩展在 .example.com
上运行,并阻止任何需要权限 "USB" 的扩展。
{
"*": {
"runtime_blocked_hosts": ["*://*.example.com"],
"blocked_permissions": ["usb"]
}
}
压缩 JSON
{"*":{"runtime_blocked_hosts":["*://*.example.com"],"blocked_permissions":["usb"]}}
扩展设置的更多 JSON 示例
使用 installation_mode 属性允许和阻止扩展
用户可以安装所有扩展 - 默认设置
{ "*": {"installation_mode": "allowed" }}
用户无法安装任何扩展。
{ "*": {"installation_mode": "blocked" }}
指定阻止安装时要显示的自定义消息。
{"*": {"blocked_install_message": ["Call IT(408 - 555 - 1234) for an exception"]}}
使用 installation_mode 属性强制安装扩展
将 installation_mode 用作 "force_installed" 时,无需用户交互即可自动安装扩展。 用户无法禁用或删除扩展。 如果扩展是“正常”或“强制”安装的,则还必须定义 update_url 字段。 此字段指向可从中安装扩展的位置。 对 update_url 字段使用以下位置:
如果要下载的扩展托管在 Microsoft Edge 加载项存储中,请使用以下 JSON 示例中的位置:
{"nckgahadaanghapdoaajjgafhacjaoii": {"installation_mode": "force_installed","update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx"}}
如果要下载的扩展托管在 Chrome Web Store 上,请使用以下 JSON 示例中的位置:
{"nckgiihapdoaajjgafhacjgahadaanao": {"installation_mode": "force_installed","update_url": "https://clients2.google.com/service/update2/crx"}}
如果你在自己的服务器上托管扩展,请使用 URL,Microsoft Edge 可以在其中下载打包的扩展 (.crx 文件) 。 JSON 示例:
{"nckgahadagoaajjgafhacjanaoiihapd": {"installation_mode": "force_installed","update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx"}}
在前面的示例中,如果使用“normal_installed”而不是“force_installed”,则会自动安装扩展,而无需用户交互,但可以禁用扩展。
提示
正确设置 JSON 字符串的格式可能比较棘手。 在实现策略之前,请使用 JSON 检查器。 或尝试早期版本的 扩展设置生成器工具
使用 Windows 注册表进行配置
ExtensionSettings 策略应写入此建下的注册表:
HKLM\Software\Policies\Microsoft\Edge\
注意
可以使用 HKCU 而不是 HKLM。 可以使用组策略对象(GPO)配置等效路径。
对于 Microsoft Edge,所有设置都将在此键下启动:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\
要创建的下一个键是单个范围的扩展 ID 或默认作用域的星号 (*) 。 例如,你将在注册表中对适用于 Google Hangouts 的设置使用以下位置:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\ExtensionSettings\nckgahadagoaajjgafhacjanaoiihapd
对于应用于默认作用域 (星号) 的设置,请使用注册表中的以下位置:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\ExtensionSettings\*
不同的设置需要不同的格式,具体取决于它们是字符串还是字符串数组。 数组值需要 [ " value " ]。 可以按当前方式输入字符串值。 以下列表显示哪些设置是数组或字符串:
- Installation_mode = 字符串
- update_url = 字符串
- blocked_permissions = 字符串数组
- allowed_permissions = 字符串数组
- minimum_version_required = 字符串
- runtime_blocked_hosts = 字符串数组
- runtime_allowed_hosts = 字符串数组
- blocked_install_message = 字符串