Skip to main content
Question

Install an In-house Chrome Extension?

  • March 6, 2026
  • 2 replies
  • 53 views

YanW
Forum|alt.badge.img+11
  • Valued Contributor

Need help installing an in-house Chrome extension. This is what I’m using but isn’t working.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ExtensionSettings</key>
<dict>
<key>Extension ID</key>
<dict>
<key>installation_mode</key>
<string>force_installed</string>
<key>update_url</key>
<string>https://URL/Extension.crx</string>
</dict>
</dict>
</dict>
</plist>

 

2 replies

Chubs
Forum|alt.badge.img+24
  • Jamf Heroes
  • March 6, 2026

Enroll your browsers into CEC and just side load it there.  Super simple that way.

Not to mention the SSO positives for when you move to PSSO.


Forum|alt.badge.img+2
  • New Contributor
  • March 11, 2026

In Chrome's ExtensionSettings policy, the update_url is *not* a direct link to a .crx. Chrome expects an update manifest service (the Chrome Web Store update service for public extensions, or your own hosted update manifest for private/in-house extensions).

 

So if this is truly in-house:

- Host an update manifest (XML) and the .crx somewhere reachable

- Point update_url at the manifest endpoint (not the .crx)

- Then force_install via ExtensionSettings using the extension ID

 

If it's a Web Store extension, update_url is typically https://clients2.google.com/service/update2/crx

 

Chubs' suggestion (Chrome Enterprise / CBCM) is also the path of least resistance if you can enroll browsers.

 

We wrote up the same gotchas + a working pattern here:

https://help.swif.ai/en/articles/7438556-deploy-any-chrome-extension-to-devices