Deploy the Nightfall Safari Extension with MDM
Deploy the Nightfall Safari extension to managed Macs from the signed package in the macOS agent download.
The Safari extension is a signed package inside the Nightfall macOS download. It is not part of the browser-extension configuration profile, and it is no longer distributed through the Mac App Store or Apple Business Manager. You do not need an Apps and Books token, a VPP sync, or per-device licenses.
Deploy the package with the custom-package flow in your MDM. Then force-enable the extension where your MDM supports Apple's declarative configuration, so users do not have to turn it on manually.
Requirements
Installing the package requires a Mac managed by your MDM.
Force-enabling the extension without user prompts additionally requires:
macOS 15.0 or later
Supervised enrollment (Automated Device Enrollment)
The primary MDM-managed user account
This is an Apple platform constraint. Safari extension management exists only as a declarative configuration (com.apple.configuration.safari.extensions.settings), which Apple introduced in macOS 15 for supervised devices. Legacy configuration profiles (.mobileconfig) cannot force-enable Safari extensions.
Declarations apply to the MDM-managed user account only. Other local accounts on the same Mac must enable the extension manually. Macs on macOS 14, or Macs that are user-enrolled rather than supervised, can still run the extension after a one-time manual enablement in Safari. See Manually Install the Nightfall Safari Extension.
Extension values
Use these values wherever your MDM asks for them. The identifier is the bundle ID, a space, then the team ID in parentheses. The spacing must match. AlwaysOn is one word.
Extension identifier
ai.nightfall.Nightfall-DLP-for-Browsers.Extension (4QRDR8M75S)
Bundle ID, when asked separately
ai.nightfall.Nightfall-DLP-for-Browsers.Extension
Team ID, when asked separately
4QRDR8M75S
State
AlwaysOn
Private browsing
AlwaysOn
Allowed domains
*
Denied domains
Leave empty
A mismatched identifier matches no extension and will not return an error.
Install the package
Download a current macOS bundle from the Nightfall console. The Safari package is included in downloads for macOS agent 1.2.15.7 and later. It is the .pkg in the safari_extension folder.
The package installs /Applications/Nightfall DLP for Browsers.app. Safari discovers the extension from that app the next time Safari launches.
Go to Apps → macOS and add a macOS app (PKG).
Upload the extension
.pkg.Assign it to the groups that should receive the extension as Required.
This uses the standard Intune macOS PKG app deployment flow.
Go to Settings → Computer Management → Packages and upload the
.pkg.Create a policy (Computers → Policies → New).
On the Packages payload, add the uploaded package with action Install.
Set the trigger to Recurring Check-in and the execution frequency to Once per computer.
Scope the policy to the computers that should receive the extension, then save it.
In SimpleMDM, go to Apps → Native Apps.
Click Add App → Custom App (macOS).
Upload the
.pkgfrom thesafari_extensiondirectory.Assign the app to the appropriate device groups.
In Kandji, go to Library and add a Custom App library item.
Select Installer Package (.pkg) and upload the
.pkgfrom thesafari_extensiondirectory.Add that library item to the blueprint used for the Nightfall agent, or to the blueprint that should receive the extension.
In JumpCloud Admin Portal, go to Device Management → Software Apps → macOS.
Click the + icon and upload the
.pkg.Scope the software package to the device groups that should receive the extension.
In Rippling, go to IT Cloud → Custom Software → Add Custom App.
Upload the
.pkgfrom thesafari_extensiondirectory.Deploy it to the devices or users that should receive the extension.
If you previously deployed this extension through Rippling's Apps and Books integration, that setup is no longer required.
Mosyle custom package deployment requires a publicly accessible download URL rather than a direct package file upload.
Unpack the Nightfall macOS bundle and locate the
.pkgin thesafari_extensionfolder.Host the
.pkgfile on secure cloud storage accessible by your endpoints (such as an Amazon S3 HTTPS URL or Azure Blob Storage).In Mosyle, navigate to Management → Custom PKG.
Create a new profile, enter the HTTPS URL pointing to the hosted
.pkg, and assign it to the target macOS devices.
Force-enable the extension
Microsoft Intune, Jamf Pro, and SimpleMDM can configure Apple's declarative Safari extensions configuration directly.
For MDMs that do not currently apply Apple's declarative extension settings on macOS (such as Kandji, JumpCloud, Rippling, and Mosyle), the package installs cleanly, but users must turn the extension on once in Safari settings.
Open the macOS configuration profiles page.
Create a profile and choose Settings catalog.
Click Add settings, search for
safari, and select the Safari extensions settings.Set the extension identifier, state, private browsing, and allowed domains from Extension values. Remove any denied-domain entries.
Assign the profile to the users or groups that should receive it, then create it.
Jamf Pro delivers declarative configurations through Blueprints.
Open Blueprints. Update an existing blueprint or create one. The Safari extensions quick start pre-selects the component.
Name the blueprint and set its scope.
Add the Safari extensions component if it is not already there.
Set the extension identifier, state, private browsing, and allowed domains from Extension values. Leave denied domains empty.
Save, then click Deploy.
SimpleMDM supports declarative management configurations.
Go to Configs → Declarative Management.
Create a configuration referencing
com.apple.configuration.safari.extensions.settings.Provide the identifier
ai.nightfall.Nightfall-DLP-for-Browsers.Extension (4QRDR8M75S).Set State to
AlwaysOn, Private browsing toAlwaysOn, and Allowed domains to*.Assign the configuration to your supervised macOS 15+ devices.
If your MDM provider adds declarative Safari extension settings for macOS, configure the values listed under Extension values.
Uploading a custom
.mobileconfigprofile does not force-enable the extension, even on MDMs that accept custom profiles. Safari extension states can only be set declaratively.When automated force-enablement is not available through your MDM on macOS, deploy the package and instruct users to perform the one-time enablement steps in Manually Install the Nightfall Safari Extension.
Verify
On a target Mac, signed in as the MDM-managed user:
Open Safari → Settings → Extensions. The Nightfall extension should be listed and enabled.
When force-enable has applied, its controls are locked and greyed out with the notice: "This extension's state has been configured by device management."
If the user can still toggle the extension, the declaration has not reached that Mac. Check that the Mac is supervised, on macOS 15 or later, in scope, and that you are signed in as the MDM-managed user.
Platform and Tamper Protection Notes
Extension state vs. app presence: Apple's declarative configuration locks the extension enabled state inside Safari, but Apple does not prevent local users from removing application files. Users with file permissions can drag
/Applications/Nightfall DLP for Browsers.appto the Trash or click Uninstall in Safari settings. Maintain compliance by monitoring the presence of the container app.First installs and updates: Once installed, the extension updates automatically through the Nightfall agent updater. The updater will not perform initial installs or recover deleted container apps.
Troubleshooting
The extension is enabled, but nothing is happening. The extension needs the Nightfall agent. Confirm the agent is installed and running on the Mac.
The package is installed, but Safari does not list the extension. Quit and reopen Safari.
The extension is listed, but the user can still turn it off. Force-enable has not applied. Confirm macOS 15 or later, supervised enrollment, scope, and that the identifier matches exactly.
It works for one user on the Mac and not another. Only the MDM-managed user account is covered. Other local accounts enable the extension manually.
The Mac is on macOS 14, or it is user-enrolled rather than supervised. Declarative force-enable is unavailable. The user enables the extension once by hand.
Was this helpful?