Skip to main content

Custom Rules

Create your own compliance rules using the mSCP YAML format.

Custom rules integrate with baseline rules and work with Audit, Build, and Documentation.

Why Create Custom Rules?

🏢Organization-Specific Policies

Enforce settings unique to your environment that aren't covered by standard baselines.

📋Internal Standards

Codify your security team's requirements into auditable, enforceable rules.

🔧Third-Party Applications

Check settings for applications not covered by mSCP baselines.

🚫Gap Coverage

Address controls not covered by existing NIST, CIS, or STIG baselines.

Custom Rules vs Customizing Rules

Customizing Rules means modifying existing mSCP rules (change ODVs, edit scripts, adjust expected values). See Customizing Rules.

Custom Rules means creating entirely new rules that don't exist in any baseline.

Rule Builder Hub

The Rule Builder Hub provides a guided interface for creating mSCP-compliant security rules.

Rule Builder HubRule Builder Hub
1
Open Rule Builder HubClick the + button in the Compliance Editor toolbar
2
Fill in Basic InformationCategory, Rule ID, Title, and Discussion
3
Select Platforms & BenchmarksChoose macOS versions and compliance benchmarks
4
Save your ruleClick Save Rule to add it to your project

Rule Builder Interface

📋Basic Information

Define the rule's identity with Category (sets the ID prefix), Rule ID, Title, and Discussion. Required fields are clearly marked.

💻Platform & Benchmarks

Select target platforms (macOS, iOS/iPadOS), versions (26.0, 15.0, 14.0), and compliance benchmarks (CIS Level 1, CIS Level 2, DISA STIG). References are auto-generated based on your selections.

👁️YAML Preview

Live preview shows the generated YAML as you fill in fields. Copy the YAML or verify the structure before saving.

Where Custom Rules Live

Custom rules are saved in your project's custom/rules/ folder:

YourProject.maceproj
└── custom/
└── rules/
├── os/ ← Organize by category
│ └── os_my_rule.yaml
└── my_other_rule.yaml ← Or use flat structure

The Rule Builder automatically saves rules to this folder when you click Save Rule.

📂Organize by Section

Place rules in subfolders matching section names (audit/, os/, pwpolicy/, etc.) or use a flat structure.

🔄Safe from Updates

Custom rules are never overwritten when you update mSCP baseline rules.

📦Portable

Copy the custom/rules/ folder to share rules between projects or team members.

What Custom Rules Can Do

Custom rules have the same capabilities as baseline rules:

🔍Check commandsVerify compliance with shell scripts
🔧Fix commandsRemediate non-compliant settings
📱Configuration profilesDeploy via MDM with mobileconfig
📲DDM declarationsUse Declarative Device Management
🔢ODV supportDefine organization-specific values
🔗ReferencesLink to NIST, CIS, DISA standards

Custom Rules in the UI

Custom rules are visually identified in the Compliance Editor:

🔧Custom Rule IconWrench icon identifies rules you created
+New Rule StatusPlus sign shows newly created rules
✏️EditableCustom rules can be modified or deleted

Compatibility

Custom rules use the standard mSCP YAML format. This means your custom rules are:

Compatible with mSCPCan be used directly with the mSCP project
ShareableShare with other MACE or mSCP users
Version controlledTrack changes with git