OrgTriage

Browser permissions, explained

For the OrgTriage Chrome extension · Last reviewed September 10, 2026 (version 0.8.13) · Published by Everything Virtually LLC.

If you need to approve this extension, start here. Chrome summarizes permissions in the install dialog. This page explains what each permission does, why OrgTriage needs it, what it does not allow, and how to verify those limits.

The authoritative source is the extension's manifest.json, which ships inside the package and can be read on your own machine. Everything on this page can be checked against it.

The complete list

OrgTriage requests three permissions. That is the entire list — there are no optional permissions requested later, and none requested at runtime.

Permission What OrgTriage uses it for What it does not allow
cookies Reuse the Salesforce session you are already logged in with, so the extension can call the Salesforce API as you. OrgTriage reads one cookie, named sid, on your Salesforce host. Cannot read cookies for any other site — the host patterns below are enforced by Chrome, not by us. The session token is used in the API call and is never transmitted anywhere else, because the extension only calls Salesforce. It is held in memory for at most five minutes, never written to disk, and discarded when you sign out.
storage Keep your cached scan results and panel preferences on your device so they survive a browser restart. Local to your machine. Not synced to us, not backed up by us. Removing the extension removes them. Note that OrgTriage does not request unlimitedStorage.
sidePanel Show the panel in Chrome's side panel, beside the Salesforce page, so it stays open while you move through the org. Does not grant access to the page. The side panel is part of Chrome: it cannot read the page, and the page cannot see it. It is switched off on tabs that are not Salesforce.

These are the only three permissions. None of them produces an install-time warning in Chrome, and a read-only diagnostic does not need more.

Host access

OrgTriage requests fourteen host patterns to cover Salesforce domains across commercial, Government Cloud, China and proxied deployments.

Chrome enforces this host-access boundary. On any other site the extension has no host access at all: it cannot read the page, cannot read cookies, and cannot make requests. There is no wildcard host access and no access to your other tabs.

Nothing in this list is optional to the product, and nothing in it broadens access to a non-Salesforce site. If your org is on commercial Salesforce, the .mil and .cn entries are inert for you.

Nothing is injected into the Salesforce page

OrgTriage declares no content script. Nothing runs inside your Salesforce pages, no iframe is added to them, and no CSS is applied to Lightning. The panel is Chrome's side panel: a separate document at the extension's own origin, placed beside the page by the browser. It cannot read your Salesforce page — it does not scrape records, watch what you type, or report what you looked at — and the page cannot see it.

What the panel does read is which tab it is beside. Every request it makes to the extension's service worker names that tab, and the worker reads the tab's URL from the browser to find the org. It can only ever ask about a tab you have open, and only on the Salesforce hosts listed above; on any other site the tab's URL is not even visible to the extension.

The panel runs at the extension's own origin. Chrome grants an extension's permissions to every page of the extension, not to the service worker alone. What keeps the session token inside the worker is the code — the panel never imports the module that reads the cookie, its Content Security Policy allows no script that did not ship in the package, and nothing from your org is ever rendered as HTML. You can verify these safeguards in the code. Chrome does not enforce a separate permission boundary between the panel and the worker. The full trust model is in the security design document that ships with the source.

About the analyzers that read your users

Four analyzers read a limited amount of information about people in your org. The list below explains which fields they read and why, so you can review whether that access is appropriate for your org.

Here is exactly what is read, and why:

The limits on that access:

What OrgTriage deliberately does not request

The following permissions do not appear in the manifest:

Not requested Which means
<all_urls> or broad host access No access to any site other than Salesforce.
tabs Cannot read your browsing history. The panel can see which tab it is beside only when that tab is on a Salesforce host; every other tab's URL is hidden from it.
scripting Nothing is injected into any page, at install or at runtime. There is no content script at all.
webRequest / declarativeNetRequest Cannot observe, intercept, modify, or block your network traffic.
downloads Exports are ordinary blob links you click. The extension has no download management.
nativeMessaging Cannot communicate with any program installed on your computer.
management Cannot see or change your other extensions.
history, bookmarks, identity, clipboardRead No browsing history, no bookmarks, no account linkage, no clipboard reading.
unlimitedStorage Operates within Chrome's ordinary local storage quota.

OrgTriage does set a custom content_security_policy, and it is worth saying why, since a custom CSP is usually a way of relaxing one. This one tightens it: connect-src is restricted to an explicit list of Salesforce hosts, so no part of the extension can open a connection to any other destination — including one belonging to us. It also sets frame-src 'none', base-uri 'none', form-action 'none', and keeps script-src 'self' with no unsafe-eval. The one relaxation is style-src 'unsafe-inline', which permits inline CSS attribute values — progress meters and table column widths rendered by the lit library. Inline styles cannot execute script, and no value from your org is ever interpolated into one.

How to verify all of this yourself

You can verify these claims yourself:

  1. Read the manifest. Go to chrome://extensions, enable Developer mode, and open the extension's manifest.json from its directory on disk. Compare it to the lists above. The permission and host entries are the ones Chrome enforces.
  2. Watch the network. Open DevTools on the side panel, go to the Network panel, and run a scan. The only requests you will see are to your own Salesforce org. There is no OrgTriage domain in the list, because there is no OrgTriage server.
  3. Watch it from the org's side. Every request OrgTriage makes is tagged Sforce-Call-Options: client=OrgTriage. Your org's API usage logs will show what it called and how much API allowance it used.
  4. Read the code. The extension ships as unobfuscated JavaScript. The cookie read and the single fetch() call site are each in one searchable location, both in background/auth.ts.
  5. Check the store listing. The Chrome Web Store shows the permissions and data-usage disclosures for the published version independently of anything we say here.

If this ever changes

If a future feature ever changes the picture on this page, we will update this page and the privacy policy before that feature ships, and clearly label any mode in which data leaves your machine. The core promise will not change: OrgTriage's analysis runs locally.

Questions

For questions about permissions or security, email [email protected].

See also: Privacy Policy


© 2026 OrgTriage · Everything Virtually LLC