What the package still does not declare
- No `scripting` permission.
- No `tabs` permission.
- No `privacy` permission.
- No page scripting permission for ads, analytics or arbitrary DOM modification.
Extension Permissions
BusinessProxy uses browser proxy APIs to apply a managed browser path after sign-in. It also declares a content-protection script for protected sessions. Supported browsers may therefore show a broad all-sites warning.
The content-protection script supports watermarking, copy/print controls, download deterrence, screenshot friction and private-app page controls. These controls are session-level deterrents, not DLP.
| Manifest entry | Purpose | Limit |
|---|---|---|
proxy | Configure browser proxy settings while BusinessProxy is connected. | Applies to browser proxy configuration, not OS network settings. |
storage | Store minimal extension state and read managed browser settings. | Does not store reusable session credentials. |
alarms | Run heartbeat, expiry and cleanup checks for the proxy session. | Background scheduling only. |
notifications | Notify the user when an administrator ends a proxy session or signs the browser out. | Used only for account and session state. |
cookies | Remove the BusinessProxy private-app session cookie when the user turns proxy off. | Limited to BusinessProxy private-app session cleanup; not used to read third-party site cookies. |
downloads | Cancel or erase downloads when a protected session policy requires download deterrence. | Used for configured protected sessions; not a general file scanner. |
declarativeNetRequest | Attach a browser-bound private-app header only to the published app alias. | Does not inject scripts or read page content. |
webNavigation | Open configured private-app browser hosts through the managed alias. | Top-level navigation handling only. |
webRequest | Receive proxy-authentication challenge events for routed browser requests. | Used for proxy-auth events, not page DOM inspection. |
webRequestAuthProvider | Respond to proxy-auth challenges with short-lived session credentials. | Does not reuse account password. |
content_scripts: content-protection.js | Apply configured content-protection controls such as watermarking, copy/print controls, screenshot deterrence and private-app page controls. | Session-level deterrence for protected flows; not DLP and not an advertising or analytics script. |
host_permissions: <all_urls> | Allows the browser to deliver proxy-auth challenges for requests routed through the configured proxy, regardless of destination site. | Broad host permission; disclosed directly. Used for proxy authentication and configured content protection. |
Supported browsers need broad host access for two reasons: they must deliver proxy-authentication challenges for routed work requests, and the declared content-protection script must run on pages where a protected BusinessProxy session requires it.
Firefox asks for this access separately when the user first turns BusinessProxy on, or after the permission has been revoked. Firefox retains the choice. If access is denied, BusinessProxy keeps the proxy off: otherwise Firefox cannot deliver the HTTP 407 proxy-authentication challenge to the extension and may show its native username and password dialog.
Firefox also requires extensions that change proxy settings to be allowed in Private Windows, because the browser uses one proxy configuration for regular and private windows. This does not mean that BusinessProxy requires private browsing.
FAQ
Browsers require broad host access so the extension can receive proxy-authentication challenges for routed requests and run the declared content-protection script where a protected session requires it. The extension does not use a tabs permission or arbitrary page scripting permission.
The extension requests `<all_urls>` host permission and declares a content-protection script. There is no arbitrary page scripting permission and no `tabs` permission; broad site access is used for proxy authentication and configured content-protection controls.