我目前正在开发一个将部署在企业环境中的Microsoft Edge扩展。
Edge扩展目前已手动安装(每次重新启动浏览器时都会重新加载,因为它来自未知来源)。
对于Internet Explorer扩展,DLL可以使用RegAsm在系统上注册,注册表调整允许加载所有加载项(IgnoreFrameApprovalCheck键,请参阅此链接),而无需任何用户提示。
有没有类似的方法可以在没有用户交互的情况下自动将Edge扩展添加到浏览器中?
谢谢!
至少到目前为止(2016年7月29日),Microsoft Edge的扩展安装必须由用户启动并完成。然而,我不确定这个政策在未来的版本中可能会改变。
Microsoft Edge的所有扩展都必须从Windows应用商店部署安装必须由用户启动和完成,仅使用Microsoft Edge和Windows应用商店提供的用户体验软件可能会在Windows应用商店中引用该扩展,但不会改变获取该扩展的体验,也不会以其他方式对用户施加不当影响或虚假伪装,让他们安装该扩展。
我认为值得尝试添加AppxPack。您将需要:
- 压缩扩展,使用所有目标计算机都信任的证书签名。在企业环境中应该是可能的
- .ps1安装脚本文件,也已签名
- 在所有目标计算机上将ExecutionPolicy设置为AllSigned选项
应该对包进行签名,否则"添加AppxPack"将不起作用。Set-ExecutionPolicy通常设置为Restricted,这将阻止ps1文件运行(Add-AppxPack是PowerShell专用工具)——这就是为什么您需要强制使用AllSigned模式并对脚本进行签名。还有无限制模式,但完全不推荐使用。
然后你用之类的东西写一个.ps1脚本
Add-AppxPackage PathtoYour_extension.appx
并使用您选择的方法在目标机器上进行部署。在这里,您可以找到一些静默调用它的方法。
请注意,用户可能需要手动启用新安装的扩展。