Skip to content

Profiles and policies

A profile is a named bundle of settings, such as a patch window, firewall rules, or a password policy, that you assign to a group of endpoints or people. Policy is what an endpoint ends up with after every profile that applies to it is merged. This page explains how profiles are built, where they apply, how Outpost decides between two profiles that disagree, and what the agent does with the result.

To build one, see Create and assign a profile. To see what one endpoint resolved to, see Check an endpoint’s effective configuration.

A profile has a Name, a Category, a Description, and a Status. Names are unique within a category. The status is one of three values:

StatusWhat it means
draftThe profile is not merged anywhere. New profiles start as drafts, so you can fill one in safely.
activeThe profile is merged on every scope it is assigned to.
archivedThe profile is not merged, and its record is kept.

Only an active profile with at least one assignment applies anything. The Profiles list marks a profile with no assignments Not assigned.

The settings inside a profile come from the settings catalog, which defines every setting Outpost can manage, its type, its default, how it merges, and which operating systems it reaches. A setting in a profile is either set, with a value, or inheriting. Inheriting is not the same as zero or off: it means a wider scope decides, and with nothing set anywhere the catalog default applies. See the Policy settings reference for every setting.

A setting that the catalog maps to more than one operating system can carry a per-OS variant: one value for Windows and another for macOS, for example. The base value applies wherever there is no variant. A setting that the agent applies the same way everywhere takes one value.

You assign a profile to a scope. Each assignment has a scope, a rank, and a Mandatory flag. The same profile can be assigned to several scopes.

Scope (Applies to)CoversDefault rank
Whole clientEvery endpoint and person in the client100
SiteThe endpoints in one site200
Device groupThe endpoints in one device group300
EndpointOne endpoint400
User groupThe people in one user group, when they are signed in to an endpoint500
PersonOne person, when they are signed in to an endpoint600
TechnicianOne technician on your team, for remote sessions they start700

When you leave the rank blank, the assignment takes the default rank for its scope, so a narrower scope outranks a wider one. You can set any rank of 0 or more.

When more than one profile applies to an endpoint, Outpost merges them in three passes. Each pass can overwrite the one before it.

  1. Rank. Non-mandatory values are applied in ascending rank, and a higher rank replaces a lower one. Rank 400 beats rank 100. When two profiles at the same rank set the same setting, the setting’s merge rule decides, such as “the smaller value wins” for a timeout or “on wins” for a protection.
  2. Mandatory. Mandatory values are applied next, whatever their rank. When two mandatory values disagree, the setting’s merge rule decides between them. No rank can beat a mandatory value.
  3. Compliance floors. If any applicable profile declares a compliance framework in compliance.target_frameworks, the baselines of that framework become floors. A floor moves a value that is weaker than the framework requires, including a mandatory value. See Compliance.

compliance.target_frameworks itself is combined across every applicable profile, at every rank. A narrower scope can add a framework and can never remove one that a wider scope declared.

Two profiles at the same rank that set conflicting values the merge rule cannot reconcile are reported as a conflict on the effective configuration page, and the Assignments tab of a profile warns when two of its assignments share a rank. Give them different ranks.

A mandatory value is one no narrower scope can override, whatever its rank. There are two ways to make a value mandatory:

  • Select Mandatory on an assignment. Every setting the profile sets through that assignment becomes mandatory.
  • Select Mandatory on one setting inside a profile. Only that setting is pinned, wherever the profile is assigned.

Both need the profile:manage_mandatory permission in addition to profile:manage, because a mandatory value can lock a client out of settings its own administrators are expected to control. Some settings cannot be made mandatory, such as the appearance settings and some power settings. The setting shows The catalog does not allow this setting to be pinned. for those.

The setting enforcement.mode decides whether an endpoint changes its own configuration to match policy.

ModeWhat the agent does
monitor (default)Reads every setting, reports what it found, and writes nothing. A setting that disagrees with policy shows as Drift detected and stays that way.
enforceRecords the setting’s original value, applies the policy value, checks it with a second read, and puts it back whenever something changes it.

Monitor is the default, so enrolling an endpoint changes nothing about its configuration until you decide otherwise. To roll enforcement out in stages, set enforce on a profile assigned to one device group, check the results, then widen it. For enforcement.mode, the most specific profile wins rather than the most cautious one, which is what makes a staged rollout possible.

In enforce mode:

  • The agent checks for drift every 15 minutes, and again as soon as its policy changes.
  • When a setting stops being managed, because you removed it from the profile or the profile no longer applies, the agent restores the value it recorded before the first change.
  • Moving an endpoint from enforce back to monitor does not restore anything. It stops further changes and leaves the managed settings as they are.
  • Drive encryption is never reversed. Removing an encryption setting from management does not decrypt a volume.
  • The agent never restarts an endpoint to apply a setting. A setting that needs a restart shows Pending reboot until the endpoint restarts.

Enforcement mode governs only the settings that change the endpoint’s own configuration. Patch, script, software, and other settings that parts of the agent act on apply in either mode.

Outpost ships these profiles. They are active, but they apply nothing until you assign them.

ProfileWhat it does
SOC 2 BaselineDeclares the scope audited against SOC 2, which turns every SOC 2 baseline in the catalog into an enforced floor.
HIPAA BaselineThe same for the HIPAA Security Rule.
PCI-DSS BaselineThe same for PCI-DSS.
CJIS BaselineThe same for the CJIS Security Policy.
NIST 800-171 BaselineThe same for NIST SP 800-171.
NIST 800-53 BaselineThe same for NIST SP 800-53.
CMMC Level 2 BaselineThe same for CMMC Level 2.
ISO 27001 BaselineThe same for ISO/IEC 27001.
DISA STIG HardeningApplies the recommended value of every DISA STIG control the catalog cites, as ordinary settings a higher rank can override.
Microsoft Security BaselineApplies the recommended value of every Microsoft security baseline control the catalog cites, as ordinary settings a higher rank can override.
Network DiscoveryTurns on network discovery: discovery.enabled and discovery.network_scan_enabled.

The built-in profiles carry the Built-in baseline chip and are locked: you can assign and unassign them, and their contents update with the product. To change a value that DISA STIG Hardening or Microsoft Security Baseline sets, assign your own profile at a higher rank. A framework that a compliance baseline declares cannot be removed by a narrower scope, and its floors cannot be weakened.

PermissionAllows
profile:readViewing profiles, their settings, and their assignments
profile:manageCreating, editing, assigning, and deleting profiles
profile:manage_mandatoryMaking a setting or an assignment mandatory
catalog:readViewing the settings catalog, its per-OS backends, and framework baselines
policy:readViewing the effective policy resolved for an endpoint and person

See Roles and permissions.

  • FreeBSD and OpenBSD endpoints apply only settings that are not tied to a platform, such as the patch.* install and maintenance-window settings. They enforce no operating system settings.
  • On Linux, disk encryption is reported, not managed. Outpost reads whether volumes are on LUKS and never encrypts one.
  • A setting the catalog maps only to some operating systems has no effect on the others. An endpoint reports such a setting as Not supported on this OS.
  • macOS support is a preview. See Supported platforms.

Content is licensed CC BY 4.0. Code samples are MIT. Outpost and the Outpost mark are trademarks of Outpost Business Solutions, PBC and are not covered by either license.