SafeToOpenBrowser Security Docs

SafeToOpen Browser Security

Deployment Overview and Enrolment Key

How Browser Security is installed and registered on a fleet, with nothing for the user to do

Guide 1 of 11 · April 2026

SafeToOpen Browser Security is a browser extension. Rolling it out to an organisation is two separate jobs, and each has a zero-touch mechanism on desktop and on iPhone and iPad:

This guide explains the pieces that every platform guide relies on. Read it once, then go to the guide for your platform.

1. The two ways to register#

Unattended enrolment (recommended)Activation email
How it worksYour MDM pushes four policy values with the extension. On first run the extension registers itself with the enrolment key.You add people on the People page (manually, CSV or Azure AD import). Each receives an email with a link; clicking it registers that browser.
User actionNone.One click per browser. Users who ignore the email stay unprotected.
SeatsConsumed when the device enrols. The person is added to People automatically.Consumed when the person is added.
NeedsIntune, Group Policy, Jamf, Apple Business Manager or Google Admin.Nothing beyond a mailbox.
PlatformsWindows, macOS, iPhone and iPad.Everything, including Android and unmanaged devices.

You can mix them: enrol managed devices and email everyone else. A person who enrolled unattended and later clicks an activation email is the same member; no second seat is used.

2. Platform coverage: what can be enforced, what stays with the user, and why#

The table is the honest map. “Enforced” means the administrator decides and the user cannot change it. “User” means the person must do it, and the reason is the platform, not SafeToOpen.

Platform / browserInstallRegistrationCan the user remove or disable it?Why
Windows · Edge, ChromeEnforced (force-install policy)Unattended (enrolment key via registry)No. The extension is greyed out on the extensions page.Chrome and Edge honour machine policy under HKLM and expose managed storage to extensions.
Windows · FirefoxEnforced (policies.json / ADMX)Activation link, until a Firefox build that reads managed storage shipsNo, when force-installed.Firefox has the policy channel; the SafeToOpen Firefox build does not yet read the enrolment values from it.
macOS · Chrome, EdgeEnforced (configuration profile)Unattended (managed preferences)No.Managed preferences are root-owned and treated as mandatory policy.
macOS · SafariEnforced (App Store app via ABM); on macOS 15+ the extension is switched on and locked by DDMActivation link, until the Mac app passes managed app configuration to the extensionNo on macOS 15+ with DDM; on older macOS the user can turn it off in Safari settings.Safari extensions live inside an app and only became MDM-controllable with the declarative Safari extension settings in macOS 15.
iPhone, iPad · Safari (supervised)Enforced (required app)Activation link, until the iOS app passes managed app configuration to the extension; policy values already arrive via Intune app configNo on iOS 18+ with DDM; below iOS 18 the user must enable it once and can disable it.Same declarative setting, iOS 18 and later only.
iPhone, iPad · Safari (BYOD, MAM only)User installs from the App StoreActivation linkYes.App protection policies manage apps, not device settings or Safari; there is no channel to the extension.
Android · EdgeUser adds it from Edge’s extension menu (Edge itself can be pushed from managed Google Play)Activation linkYes.Microsoft’s extension policies (force-list, extension settings, third-party policy) are documented as not supported on Android, and Edge’s Intune app configuration has no extension keys. Nothing on the device can install or configure an extension for the user.
Android · Chrome, Samsung Internet, othersNot availableNot availableThese browsers do not run extensions. Protect Android at the network layer (MDM DNS or web filtering) if required.
ChromeOSEnforced (Google Admin force-install)Activation linkNo.Google Admin sets extension policy per organisational unit, so enrol_key and domain_name can be pushed, but there is no per-device script to supply user_name and asset_name.
Linux · Chrome, EdgeEnforced (JSON policy files)Unattended (JSON policy files)No.Root-owned policy files are mandatory policy.
Unmanaged laptops (BYOD, contractors)User installs from the storeActivation linkYes.No management agent, no policy. The activation email and the People page’s emailed indicator are the tools you have.

What the user can and cannot change once enrolled#

Note Rule of thumb for customer conversations: unattended and locked on Windows, macOS and Linux for Chrome and Edge; locked but one click to register on Safari and ChromeOS; user-driven on Android and BYOD. Do not sell beyond that.

3. The enrolment key#

  1. Sign in to the Business Console as Owner or Co-administrator and open Settings: https://plus.safetoopen.com/business-console#/settings.
  2. In the card “Unattended enrolment (MDM)”, tick Enabled. The console generates the organisation’s enrolment key.
  3. Click Show, then Copy. Paste it into your MDM policy as the value of enrol_key. Treat it like a password: anyone who has it can register a browser against your organisation and consume a seat.
  4. If the key leaks, click Rotate. New enrolments with the old key stop at once; devices already enrolled keep working.
Note The card also generates copy-ready payloads for Intune, a .reg file, macOS and iOS with your key already filled in. The platform guides explain where each one goes.

4. The four policy values#

Whatever the delivery channel, the extension reads the same four values from managed storage:

KeyValueWhat it becomes
enrol_keyThe organisation’s enrolment key from Settings.Proves which organisation the browser belongs to.
user_nameThe person’s email or UPN, for example [email protected]. CONTOSO\jdoe or jdoe are accepted; the email domain set in the console (or the owner’s domain) is appended.The member record on the People page and the seat.
asset_nameThe device name, for example LAPTOP-0421.The label of the browser session and the row in the enrolled-devices list. Re-enrolling the same device reuses its session.
domain_nameA workspace name, or blank.Puts the person in that workspace, so they receive its policies, alert recipients and analysts. Unknown names fall back to the organisation default and are flagged in the console.

An optional fifth key, enforce_alert, fixes the alert level for the user: 1 malicious only, 2 suspicious and above, 3 everything, 4 silent.

The browser needs the device name and the person’s identity from outside because no browser API exposes either. That is why the delivery mechanism on Windows and macOS is a script rather than a static profile.

5. Extension identifiers#

BrowserExtension IDUpdate URL
Google Chromeekfkopmgnijagfmjgcjkbffcnmggekechttps://clients2.google.com/service/update2/crx
Microsoft Edgebbgoikmidjfiaaadlgkpdlppilhkjfkehttps://edge.microsoft.com/extensionwebstorebase/v1/crx
FirefoxShown in about:debugging#/runtime/this-firefox after a manual installAdd-on: https://addons.mozilla.org/addon/safetoopen-online-security/
Safari (macOS)Bundled in the Mac App Store app “SafeToOpen Online Security”https://apps.apple.com/us/app/safetoopen-online-security/id1587471170
Safari (iPhone, iPad)Bundled in the App Store app “SafeToOpen”https://apps.apple.com/us/app/safetoopen/id1588042602

6. Workspaces#

Workspaces let an MSP or a larger organisation split people into sites, departments or client tenants, each with its own policies, alert recipients and analysts. Create them on the Workspaces page first. Then push the workspace name as domain_name to the devices that belong there. Devices with no domain_name land in the organisation default.

7. What the user sees#

Nothing during enrolment. The extension icon appears in the toolbar, its popup shows your organisation name and logo, and the settings that your workspace policy locks are greyed out. The person can still open the popup, see why a page was blocked and report a false positive.

8. Verifying a deployment#

  1. On the device, open chrome://policy or edge://policy and click Reload policies. Under the SafeToOpen extension ID you should see enrol_key, user_name, asset_name and domain_name. If they are missing, the policy has not reached the browser yet; that is a policy problem, not a SafeToOpen problem.
  2. Open the extension popup. It should show your organisation name.
  3. In the console, Settings → Unattended enrolment → Enrolled devices lists the device with the person, workspace and an active session within a minute of the browser starting.
  4. People shows the person as active. Removing them there revokes the device; the device re-enrols automatically at next start if the policy is still present, so remove the policy first when someone leaves.

9. Troubleshooting#

SymptomCauseFix
Device never appears in Enrolled devicesPolicy values not on the device, or user_name / asset_name emptyCheck the policy page in the browser. Empty values make the extension wait for the policy.
Activity log shows “enrol blocked: no_seats”All seats usedAdd seats in Settings; the device retries within 6 hours or at next browser start.
“enrol blocked: session_limit”One person has five active browsers and none of them is an MDM sessionRevoke old sessions from the People page, or forget stale devices.
Wrong person shown on the deviceuser_name is the machine or a service accountOn Windows, take the UPN from the Intune enrolment (guide 2) rather than from whoami under SYSTEM.
Workspace column shows “pushed X is not a workspace”Typo, or the workspace was renamedFix domain_name in the policy. The device re-reads policy changes at once.
Enrolment stopped after rotating the keyMDM still pushes the old keyUpdate the policy value; devices retry immediately when the managed policy changes.

10. Which guide next#