Build AWS Service Control Policy statements for Organizations.
Last verified: May 2026
Output will appear here...Your security team is hardening the org after a finding that a junior dev disabled CloudTrail in a dev account. The builder generates an SCP denying `cloudtrail:StopLogging`, `cloudtrail:DeleteTrail`, `guardduty:Disable*`, `config:Stop*`, and similar. Tested in a sandbox OU first (no impact on legitimate workloads), then promoted to all OUs. Now no member account — even with full admin — can disable security services. Audit finding closed; the same incident becomes structurally impossible.
Service Control Policies (SCPs) are the guardrails of AWS Organizations, setting the maximum permissions boundary for every account in an organizational unit. Unlike IAM policies that grant access, SCPs restrict what actions member accounts can perform — even if those accounts have full administrator privileges. The SCP Policy Builder helps you construct deny and allow statements with the correct syntax, condition keys, and resource scoping so your organization-wide security boundaries work as intended without accidentally blocking critical services.
The builder constructs SCP JSON documents with Statement arrays containing Effect (Allow or Deny), Action (specific or wildcards), Resource (typically * for SCPs), and Condition blocks. Common templates: deny region-restricted, deny security service disable (CloudTrail/GuardDuty/Config), deny specific services, allow only approved services. Output is the SCP JSON ready to attach via aws organizations create-policy + attach-policy.
SCPs are deny-list, not allow-list. The default policy 'FullAWSAccess' is allow * on *, which is what enables everything. To restrict, you ADD deny statements. Newcomers often try to write SCPs as 'allow only these things' and break their entire org — that pattern requires removing FullAWSAccess and explicitly allowing every needed action, which is a maintenance nightmare.
Always test SCPs in a sandbox OU first. SCPs apply IMMEDIATELY across the OU on attach — there's no dry-run mode. A poorly-written SCP can lock everyone out of every account in the OU instantly. Test in an OU containing one disposable test account before promoting to production OUs.
Region-restriction SCPs need to allow global services (IAM, CloudFront, Route 53, Organizations). Without those exceptions, basic admin tasks fail silently. The builder includes a template that handles this correctly by default — hand-crafted policies often miss it and lock teams out of IAM.
Was this tool helpful?
Disclaimer: This tool runs entirely in your browser. No data is sent to our servers. Always verify outputs before using them in production. AWS, Azure, and GCP are trademarks of their respective owners.