Screenproof Admin KB

Fleet licensing

Licenses are offline, Ed25519-signed files — no Screenproof servers, no activation calls. For fleets, deliver the license through the same managed-preferences profile as everything else.

Why it matters: export gating

Unlicensed installs get a 14-day full trial from first launch; after it, release builds block exports until a valid license resolves. Never capture or redaction enforcement — an unlicensed device still captures, blocks, blurs, and audits; it just can't export. Fleet deployments never see any of this: with the license in the profile, no trial state is ever created. Deploy the license with (or before) the app so users never hit the gate.

Recommended: LicenseKey in the managed-preferences profile

Put the license itself — the base64 one-liner from your purchase email (the output of licensegen sign) — in the profile:

<key>LicenseKey</key>
<string>PASTE-THE-BASE64-LICENSE-HERE</string>

Alternative: LicenseFilePath

Point the app at an Ed25519-signed license file you deploy separately (e.g. via an MDM script or PKG payload):

<key>LicenseFilePath</key>
<string>/Library/Application Support/Screenproof/license</string>

Use this only if your org prefers files on disk; you take on staging the file yourself, and the export gate stays closed until the file exists at that path.

Precedence

When both keys are set, LicenseKey wins over LicenseFilePath.

What users see

On a managed device, the Settings → License tab shows the license as "Managed by your organization" — locked, not user-editable. Remove the key from the profile and the user's own license setting applies again.

Seat counts are honor-system The signed license states org/seats/expiry, but nothing technically blocks over-seating at install time. True-up happens against your own MDM inventory, not a Screenproof-side check.