Safeguard
Developer Tools•

When a plugin update adds permissions, should it auto update?

No: an update that widens access should pause until a person approves. Learn how browsers handle it and how to design update trust for your plugins.

Safeguard Security Team
4 min read

No. An update that adds permissions should not apply silently. Hold it until the user or an admin approves the new access, keep the old version running if possible, and treat the change as a review event. Chrome already works this way for permissions that trigger a warning.

Why updates are the real risk

Installing a plugin is one decision made once. Updating is a decision made repeatedly, often with no human involved. That is exactly how a trusted plugin turns hostile: an ownership change or a stolen publisher account, followed by an update that adds access.

Chrome's permission warning guidelines describe the guard. When a new permission that triggers a warning is added, the extension is disabled until the user accepts it. Chrome also notes that adding or changing match patterns in host permissions or content script matches triggers a warning.

What your update policy should cover

Change in the new versionSuggested handling
New sensitive permissionPause until approved, show a plain summary
Wider host or domain listSame as above
New network destinationFlag for review, notify admins
New bundled dependencyScan before release, record in inventory
Code size jump or new obfuscationRoute to a human reviewer
Version change only, same permissionsAuto update is fine

Verify the package, not just the permissions

Permissions are one signal. Integrity is another. The Visual Studio Marketplace signs all extensions when they are published, and VS Code checks the signature on install to verify integrity and source. Mozilla's policies add that a new version submitted after corrections should not contain unrelated changes, because they complicate review.

For enterprises, pinning matters. VS Code lets admins allow extensions by publisher, extension and specific version, with no version ranges, and it disables an installed extension if its version is later blocked. That gives a team control over when a change reaches users.

Steps to design update trust

  1. Store the approved permission set with each installed plugin.
  2. On update, compare the new manifest against the stored set.
  3. If anything widens, hold the update and keep the previous version active until approved.
  4. Verify the package signature before applying any update.
  5. Offer admins version pinning and a delay window for critical environments.
  6. Log every update with the permission diff, and alert on the unusual ones.

What about security fixes?

Holding updates has a cost. If a patch for a vulnerability is stuck waiting for approval, users stay exposed. Separate the two cases: updates with no permission change flow automatically, so fixes arrive fast, while permission changes wait. This split is the main reason to compare manifests rather than blocking all updates.

Try it yourself

Click through it at your own pace, or open it full screen.

Watch how a monitored component is re-evaluated as new information arrives. Update trust needs the same habit: check again after every change.

Quick check

Do all updates need approval?

No. Only changes that widen access or add new risk need a human. Updates with the same permissions can flow automatically so security fixes are not delayed.

Is a valid signature enough to trust an update?

No. A signature shows who published the package and that it was not altered. A compromised publisher can sign a harmful update, so permission and behavior checks still apply.

Safeguard's dependency scanning and policies can evaluate each new plugin build before release, and the free scan is a way to try it.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.