Google Chrome 扩展设置的集中配置?

Centralized configuration of settings for a Google Chrome Extension?

我们想开发一个 Google Chrome 集中管理的扩展,例如通过 MS Active Directory 组策略。

我们如何为此类扩展程序集中分发 domain/customer 特定 配置

我们的用户主要是 Windows 同一域中的用户,但我们不能假设他们登录到任何特定的 G-Suite 组织。

seem possible 创建 Active Directory 组策略以 安装 所有用户的特定扩展。然而,同一篇文章确实说:

Unfortunately I was not able to come up with a solution concerning the centralized management of Chrome extension settings. Some extensions, for example The Great Suspender, come with additional options for the user to configure. As said, I was not able to find a way how to manage or configure these centrally.

既然安装了扩展,我们如何配置它?

既然是我们自己的扩展,那就更自由了。我正在考虑使用组策略,可以安装 C:\some\extension-file.json 然后 运行

google-chrome --headless file:///some/extension-file.json

如果扩展程序拦截了(例如 ViolentMonkey 所做的)但前提是它是一个 file:// URL,我想这可能会起作用。但我希望:你能想出更优雅的东西吗?

How do we centrally distribute domain/customer specific configuration for such an extension?

chrome.storage.managed 是针对该需求的具体答案。引用 docs:

Enterprise policies configured by the administrator for the extension can be read (using storage.managed with a schema).

考虑到这一点,您必须执行以下操作:

  1. Provide a schema 通过清单中的 storage.managed_schema 键进行存储。文档中给出了一个示例。

  2. 模式通过 GPO/注册表期望的当前值作为 described in admin docs

您可以通过观察 chrome://policy.

来验证政策规定的值是否已加载

然后您可以像使用任何其他 chrome.storage 一样使用 chrome.storage.managed(尽管它是只读的),包括观察 onChanged 的变化。