我有一个Windows系统,它是域的一部分。我已导入域GPO chrome .admx
文件,然后为' ExtensionInstallForceList'创建了Chrome GPO政策。使用http://dev.chromium.org/administrators/policy-list-3#ExtensionInstallForcelist作为参考。
这里我已经指定了以解压缩格式加载时生成的扩展的ID。此外,我使用本地HTTP服务器作为下载的地方。我使用的属性的伪值:
eelojgpfkmaaabbbccneneemcahoehjo;http://<some.ip.address>/crx
参见附件快照以供参考:
我创建了一个IIS服务器并启用了目录浏览,然后选择了服务器的根路径指向&#39; crx&#39;的父文件夹。我可以使用上面的URL访问crx中存在的xml文件。
但是我的扩展程序仍未安装。但我也在Chrome网上商店中有扩展程序,如果我使用网上商店网址,则扩展程序已成功部署。
根据以下Xan的评论和我进行的进一步试验,我将为以下各项添加快照: 1. 2.尝试了FQDN而不是IP地址,但仍然无法安装 3.将GPO更改为指向包含crx文件而不是更新URL的文件夹。仍然没有安装 我已经使用你提到的链接打包了扩展程序。我拖了这个打包的crx文件并找到了新的ID。然后,我在我的updates.xml文件以及Chrome GPO政策中使用了此ID。但是,域端点上仍未安装扩展。
答案 0 :(得分:0)
你在问题中没有详细说明,但我发现了一些问题/遗漏:
我在这里指定了以解压缩格式加载时生成的扩展名的ID。
这不起作用;该ID只是一个临时的ID,基于扩展路径的哈希值。
Chrome需要生成密钥对并签署 CRX才能在企业部署中使用。
您需要通过chrome://extensions
的开发者模式将其打包为CRX。
它会生成一个私钥.pem
,您需要为以后的任何更新保存(否则ID将再次更改,您将无法将其用作更新)。
然后,将CRX 安装在同一台计算机上,将其拖至chrome://extensions
以获取其最终签名ID。
作为此步骤的替代方案,您can use OpenSSL to generate the key from the .pem
从前面的步骤中获得。
您在GPO政策中指向的网址是更新网址,而不是实际的CRX文件!
有关更新清单的信息,请参阅this documentation。这是一个例子:
<?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
<app appid='eelojgpfkmaaabbbccneneemcahoehjo'>
<updatecheck codebase='http://<some.ip.address>/actual_extension.crx' version='1.0' />
</app>
</gupdate>
更新时根据需要修改updatecheck.version
。请勿触摸任何gupdate
属性。
您的服务器发送的内容类型可能存在小问题。
我无法找到有关文件内容类型的防弹信息,但很好的猜测是:
application/xml
了解更新清单application/octet-stream
表示CRX文件也许您正在使用IP与FDQN。您应该可以为更新服务器创建本地DNS条目 - 尝试查看它是否有帮助。
答案 1 :(得分:-1)
以下是Alternative Extension Distribution Options文档,介绍了如何分发Chrome扩展程序的可能方式。
所有Chrome扩展程序必须直接从Chrome网上应用店使用inline installation或使用下述机制进行分发。如果不遵守这些分发方法之一,则违反了Chrome extension policy,并可能导致扩展和/或分发该软件的软件被标记为unwanted software。
如果您想通过计算机和操作系统用户政策强制在公司管理的Windows设备上安装Chrome扩展程序,也可以查看此support page。