Cloud Custodian is an open-source rules engine, released under Apache 2.0, that lets organizations replace the ad hoc scripts they use to manage public cloud accounts with a single policy layer, defining rules in YAML that filter resources and act on them. It runs as a command-line tool, either invoked directly, scheduled as a cron job against existing infrastructure, or bound to serverless event streams for real-time enforcement, which makes it suited to cloud platform and security teams responsible for AWS, Azure, and GCP compliance, tagging, and cost cleanup rather than to application developers. Its README describes it as a CNCF Incubating project consolidating what would otherwise be dozens of separate cloud-management scripts into one tool. With 593 contributors, 250 commits in the past year, and a release only 85 days ago, it remains under active development since its first commit in 2015.
Cloud Custodian is a rules engine for managing public cloud accounts and resources across AWS, Azure, and GCP using YAML-defined policies.
Which resources across my AWS, Azure, and GCP accounts are out of compliance with my security or tagging policies?
runs a YAML policy's filters against live resource inventory in the account and returns the matching set, with metrics and structured output describing what failed and why
Can I see what a policy would change before it touches anything?
supports a dry-run mode that evaluates the policy against real resources and reports what actions would fire without executing them
Will this policy actually catch something bad before it reaches production infrastructure?
runs the same policy against infrastructure-as-code assets on a workstation or in a CI pipeline, giving feedback before the resources are ever provisioned
How do I get notified the moment a resource violates policy, instead of waiting for the next scan?
binds the policy to the cloud provider's serverless event stream so matching actions run in real time as changes happen, rather than only on a schedule
How do I check compliance across many existing accounts without hand-rolling a script for each one?
runs as a scheduled job against a fleet of existing resources across regions or accounts, applying the same policy set and consolidating the results into one report
105 capabilities
across 7 capability groups
· 1 backed by code, an API document or a real run
Built from Cloud Custodian's releases, docs, README and our own runs.
“Seen” marks the month we first spotted a release the vendor didn't date.
Group names and tags are our labels.
+HCL validationverifiedValidates HCL configuration files, with options to fail on errors, check for deprecated features, and expand variables per account.8 releases · 4 other sources · first seen May 2016▸
Enables c7n-left (shift-left) to fail runs on HCL parse errors, surfacing misconfigured Terraform before policy evaluation.
0.9.49.0 · Jan 2026
· source
· release history
Adds terraform._ resource type support.
0.9.47.0 · Sep 2025
· source
· release history
Adds --var-file CLI argument to c7n-left to pass Terraform variable files directly.
0.9.31.0 · Sep 2023
· source
· release history
Adds prefix: data. namespace to c7n-left data resource types.
0.9.31.0 · Sep 2023
· source
· release history
Add JSON schema mapping types in core validation logic
0.9.4.0 · Jul 2020
· source
· release history
Boolean filter blocks (or, and, not) are now validated recursively, which may cause validation errors for invalid policies that previously passed
0.8.45.0 · Sep 2019
· source
· release history
command line
--per-account — Validate per account with variable expansion
0.9.51.0 · May 2026
· command-line history
--check-deprecations — Check for deprecated features
0.9.51.0 · May 2026
· command-line history
--err-invalid — Fail/stop if there are errors present in the HCL
0.9.49.0 · Jan 2026
· command-line history
example
Pass local Terraform variable files to c7n-left during policy evaluation.$ c7n-left evaluate --var-file vars.tfvars policy.yml
0.9.31.0 · Sep 2023
· source
+Shift-Left Tooling EnhancementsshippedUpdates c7n-left to exit with code 1 on policy matches and includes resource names and JMESPath results in JSON output.7 releases · 3 other sources · first seen Feb 2017▸
Adds terraform._ resource support for Terraform shift-left policy evaluation.
0.9.42.0 · Nov 2024
· source
· release history
Adds validate command to c7n-left (shift-left CLI) for policy validation against IaC.
0.9.41.0 · Sep 2024
· source
· release history
Restores Terraform as a supported provider in core, enabling schema validation for shift-left (terraform._ resource).
0.9.41.0 · Sep 2024
· source
· release history
Extends c7n-left traverse filter to support boolean blocks in attributes.
0.9.41.0 · Sep 2024
· source
· release history
tools/c7n-left exits with code 1 when resources match policies in shift-left checks
0.9.20.0 · Oct 2022
· source
· release history
tools/c7n-left updates JSON output to include resource names and JMESPath query results
0.9.20.0 · Oct 2022
· source
· release history
example
Run policy checks on Terraform infrastructure using the new c7n-left shift-left capabilities with JSON output including resource names.$ c7n-left --config terraform_plan.json --policy terraform_policy.yml --output-format json
0.9.20.0 · Oct 2022
· source
Debug environment details without running a full policy execution.$ c7n-cli version --debug
0.8.23.0 · Feb 2017
· source
Apply multiple policy files in a single CLI invocation.$ c7n-cli run -p policies/compliance.yml -p policies/cost-optimization.yml
0.8.23.0 · Feb 2017
· source
+Shift-Left IaC ValidationshippedValidates cloud policy configurations against Infrastructure as Code (IaC) formats like Terraform before deployment.5 releases · 2 other sources · first seen Sep 2024▸
Also counts toward: Command-line interface, Terraform provider
release
Adds validate command to c7n-org for validating policy files across org accounts.
0.9.51.0 · May 2026
· source
· release history
Adds terraform._ resource support for Terraform shift-left policy evaluation.
0.9.42.0 · Nov 2024
· source
· release history
Adds validate command to c7n-left (shift-left CLI) for policy validation against IaC.
0.9.41.0 · Sep 2024
· source
· release history
Restores Terraform as a supported provider in core, enabling schema validation for shift-left (terraform._ resource).
0.9.41.0 · Sep 2024
· source
· release history
Extends c7n-left traverse filter to support boolean blocks in attributes.
0.9.41.0 · Sep 2024
· source
· release history
example
Validate a policy file$ custodian validate policy.yml
Dry run policy without executing actions$ custodian run --dryrun -s out policy.yml
+Infrastructure as Code (IaC) Shift-Left EnhancementsshippedImproves shift-left validation capabilities with workspace selection and output enhancements.3 releases · first seen Sep 2019▸
Enables c7n-left (shift-left) to fail runs on HCL parse errors, surfacing misconfigured Terraform before policy evaluation.
0.9.49.0 · Jan 2026
· source
· release history
Adds --workspace option to c7n-left for selecting a Terraform workspace during shift-left policy evaluation.
0.9.43.0 · Feb 2025
· source
· release history
aws.securityhub now supports event mode for detecting Security Hub findings via CloudTrail events
0.8.45.0 · Sep 2019
· source
· release history
+Encryption at rest2 featuresData discovery and protectionsince 2025▸
+KMS Key Schedule DeletionshippedAdds actions to schedule the deletion of KMS keys for lifecycle management.2 releases · first seen Jul 2025▸
Shared capability: Encryption at rest
release
New last-rotation filter on aws.kms-key to identify keys by their last rotation date.
0.9.48.0 · Dec 2025
· source
· release history
New schedule-deletion action on aws.kms-key for scheduling KMS key deletion via policy.
0.9.46.0 · Jul 2025
· source
· release history
+Azure Key Vault Key UpdatesshippedAdds actions to modify key attributes in Azure Key Vault.1 release · first seen Dec 2025▸
Shared capability: Encryption at rest
release
New update action on azure.keyvault-key for modifying Key Vault key attributes.
0.9.48.0 · Dec 2025
· source
· release history
+Data access governance1 featureData discovery and protectionsince 2020▸
+GCP Permission QueryingshippedAdds a query capability to retrieve permissions for GCP resources.1 release · 1 other source · first seen Jul 2020▸
Shared capability: Data access governance
release
Add get-permissions query in GCP provider
0.9.4.0 · Jul 2020
· source
· release history
example
Query GCP resource permissions using the new get-permissions feature.$ c7n-gcp get-permissions --project my-project --type compute/instance
0.9.4.0 · Jul 2020
· source
+Log enrichment1 featureLogs and telemetrysince 2020▸
+Security Hub Finding EnhancementshippedEnhances Security Hub findings to include public IP addresses for better context.1 release · first seen May 2020▸
Shared capability: Log enrichment
release
Adds public IP inclusion to Security Hub findings via securityhub-post-finding enhancement
0.9.2.0 · May 2020
· source
· release history
+Log routing1 featureLogs and telemetrysince 2025▸
+WAFv2 Logging ConfigurationshippedAdds actions to configure logging destinations for AWS WAFv2.1 release · first seen Dec 2025▸
Shared capability: Log routing
release
New set-logging action on aws.wafv2 to configure WAF logging destinations.
0.9.48.0 · Dec 2025
· source
· release history
+Metrics collection1 featureLogs and telemetrysince 2025▸
+FSx Metrics Filter ExpansionshippedAdds metrics filtering to all FSx file system types.1 release · first seen Sep 2025▸
Shared capability: Metrics collection
release
Adds metrics filter to aws.fsx covering all FSx file system types.
0.9.47.0 · Sep 2025
· source
· release history
+Role-based access control1 featureIdentity and accesssince 2016▸
+Kubernetes RBAC Resource ManagementshippedAdds support for managing Kubernetes Role and ClusterRole resources within c7n_kube.3 releases · first seen Jul 2016▸
Shared capability: Role-based access control
Also counts toward: Role-based access control
release
Adds config-compliance filter to aws.iam-certificate, aws.iam-saml-provider, and aws.prefix-list resources.
0.9.28.0 · Jun 2023
· source
· release history
Add role and cluster-role resources to c7n_kube for Kubernetes RBAC management
0.9.20.0 · Oct 2022
· source
· release history
Adds network interface filters (subnet, security group) and actions (remove-security-group)
0.8.17 · Jul 2016
· source
· release history
+Other / not yet classified94 featuresFeatures we have not matched to a capability yet. A suggested match is marked.▸
+Resource-Specific Action and Filter EnhancementsshippedExpands the capabilities of specific resource types with new actions, filters, and configuration options.265 releases · 4 other sources · first seen May 2016▸
release
265 total
Extends Azure metric filter to support parent-scoped dimensions.
0.9.53.0 · Oct 2026
· source
· release history
Adds support for aws.dsql-cluster resource with consecutive-aws-backups filter
0.9.53.0 · Oct 2026
· source
· release history
Adds archive action to azure.machine-learning-data-container.
0.9.53.0 · Oct 2026
· source
· release history
Adds consecutive-aws-backups filter to aws.dsql-cluster.
0.9.53.0 · Oct 2026
· source
· release history
Adds support for aws.bedrock-custom-model resource with new deployments filter
0.9.53.0 · Oct 2026
· source
· release history
Adds deployments filter to aws.bedrock-custom-model for filtering by model deployments.
0.9.53.0 · Oct 2026
· source
· release history
example
Find IAM users with service-specific credentials (e.g., CodeCommit HTTPS credentials) to audit or rotate them.$ custodian run -s out policy.yml # policy.yml: policies: - name: iam-user-service-specific-creds resource: aws.iam-user filters: - type: service-specific-credentials
0.9.50.0 · Mar 2026
· source
Find Lambda functions with public function URLs that are not restricted to IAM authentication.$ custodian run --output-dir=out - <<'EOF' policies: - name: lambda-public-url-no-iam resource: aws.lambda filters: - type: url-config key: AuthType value: NONE EOF
0.9.42.0 · Nov 2024
· source
Enforce specific SSL policies on ELBs that match a whitelist filter$ c7n-cli run -e prod -s out policy.yml policy.yml: type: elb name: enforce-ssl-policy mode: type: cloudonevent period: 300 filters: - ssl-whitelist: -…
0.8.5 · May 2016
· source
+Cloud Provider Resource ExpansionshippedAdds new resource types and filters for AWS, Azure, GCP, and Tencent Cloud to enable granular policy targeting.172 releases · 2 other sources · first seen Jun 2016▸
release
172 total
Adds aws.s3-table and aws.s3-table-bucket resource types for S3 Tables.
0.9.53.0 · Oct 2026
· source
· release history
Adds aws.event-connection resource type for EventBridge event connections.
0.9.53.0 · Oct 2026
· source
· release history
Adds support for aws.s3-table and aws.s3-table-bucket resources in S3 Tables service
0.9.53.0 · Oct 2026
· source
· release history
Adds support for aws.aiops-investigation-group resource in AWS AIOps
0.9.53.0 · Oct 2026
· source
· release history
Adds audit mode support to gcp.dataproc-clusters.
0.9.53.0 · Oct 2026
· source
· release history
Adds aws.apigwv2-route resource type with authorization type filtering for API Gateway v2 routes.
0.9.53.0 · Oct 2026
· source
· release history
example
Detect EKS clusters where a Kubernetes version upgrade is available, so you can prioritize remediation before support ends.$ custodian run -s out policy.yml # policy.yml: policies: - name: eks-upgrade-available resource: aws.eks filters: - type: upgrade-available
0.9.50.0 · Mar 2026
· source
Scan newly added AWS Transfer resources for misconfigurations.$ custodian run -s output/ policy.yaml # inside policy.yaml: resources: aws.transfer-server
0.9.21.0 · Dec 2022
· source
+Policy Engine and Logic ExpansionshippedAdds core policy engine capabilities including variable support in conditions, JMESPath value paths, and list iteration.62 releases · 4 other sources · first seen Jul 2016▸
release
62 total
Adds --vars-file parameter to custodian run to inject variables into policy expansion at runtime without modifying policy files.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
0.9.53.0 · Oct 2026
· source
· release history
New file-services filter on azure.storage for inspecting Azure Storage file service settings.
0.9.46.0 · Jul 2025
· source
· release history
Allows variable references to pass type validation in core policy processing.
0.9.36.0 · Apr 2024
· source
· release history
Allows escaped hyphens via ordinal hex in offhours core filter
0.9.32.0 · Oct 2023
· source
· release history
Supports float value_type in core policy filters
0.9.32.0 · Oct 2023
· source
· release history
aws.quicksight-user resource type added for QuickSight users
0.9.30.0 · Aug 2023
· source
· release history
docs
Rules engine for managing AWS, Azure, and GCP cloud accounts by enforcing security, tag, and cost policies defined in YAML.
example
Inject environment-specific variables (e.g. account IDs, tag values) into a policy at run time without editing the YAML file.$ custodian run --vars-file vars.json -s out policy.yml
0.9.53.0 · Oct 2026
· source
Use a variable or lookup value in a policy condition instead of hardcoding values, enabling dynamic filter logic.$ c7n run -s output/ policy_with_value_from.yaml
0.9.5.0 · Aug 2020
· source
Run policy against cloud resources$ custodian run -s out policy.yml
+Resource Type ExpansionshippedAdds support for new resource types across AWS, Azure, GCP, and Tencent Cloud to enable granular policy targeting.31 releases · 1 other source · first seen Jul 2016▸
release
31 total
Adds Sagemaker Studio app, user-profile, and space resources in AWS
0.9.52.0 · Sep 2026
· source
· release history
Adds Vertex AI Custom Job resource in GCP
0.9.52.0 · Sep 2026
· source
· release history
Adds Private DNS Zone and Record Set resources in Azure
0.9.52.0 · Sep 2026
· source
· release history
Adds azure.ai-foundry-agent and azure.ai-foundry-application resources.
0.9.52.0 · Sep 2026
· source
· release history
Adds azure.ai-foundry-project and azure.ai-foundry-connection resources with associated actions.
0.9.51.0 · May 2026
· source
· release history
New aws.directconnect-gateway and aws.directconnect-virtual-interface resources for Direct Connect management.
0.9.50.0 · Mar 2026
· source
· release history
example
Detect EKS clusters where a Kubernetes version upgrade is available, so you can prioritize remediation before support ends.$ custodian run -s out policy.yml # policy.yml: policies: - name: eks-upgrade-available resource: aws.eks filters: - type: upgrade-available
0.9.50.0 · Mar 2026
· source
+Resource Tagging and OwnershipshippedAdds tagging actions, auto-tagging, and ownership tracking filters for various resource types.27 releases · 3 other sources · first seen Nov 2016▸
release
27 total
Adds tagging actions to aws.ops-item, aws.ssm-managed-instance, and related resources
0.9.53.0 · Oct 2026
· source
· release history
Adds auto-tag-user, copy-related-tag, mark-for-op, remove-tag, and tag actions plus marked-for-op filter to aws.ops-item and aws.ssm-managed-instance.
0.9.53.0 · Oct 2026
· source
· release history
Standardizes dynamic tagging support across AWS, Azure, and GCP, including default-value with no key pattern on Azure and GCP.
0.9.53.0 · Oct 2026
· source
· release history
Adds resource lookup support in tag values for Azure tags actions.
0.9.52.0 · Sep 2026
· source
· release history
Adds resource lookup support in tag values for aws.tags actions, enabling dynamic tag propagation.
0.9.52.0 · Sep 2026
· source
· release history
Adds BigQuery recommender support for GCP.
0.9.51.0 · May 2026
· source
· release history
example
Detect KMS keys that have not been rotated within the last 365 days to enforce rotation compliance.$ custodian run -s out policy-kms-rotation.yml # policy-kms-rotation.yml: policies: - name: kms-keys-stale-rotation resource: aws.kms-key filters: - type: last-rotation op: gt days: 365
0.9.48.0 · Dec 2025
· source
Tag Shield Protection resources with the user who created them, enabling ownership tracking for DDoS-protected resources.$ custodian run -s out shield-autotag.yml # shield-autotag.yml: policies: - name: shield-protection-auto-tag-owner resource: aws.shield-protection filters: - "tag:Owner": absent actions: - type:…
0.9.44.0 · Apr 2025
· source
Tag all AWS Shield protections with the responsible owner and mark untagged ones for follow-up.$ custodian run -s out policy-shield-tag.yml # policy-shield-tag.yml policies: - name: shield-auto-tag-creator resource: aws.shield-protection filters: - "tag:Owner": absent actions: - type:…
0.9.43.0 · Feb 2025
· source
+Filter Expansion for Existing ResourcesshippedAdds new filters to existing resource types for deeper inspection and configuration validation.24 releases · 1 other source · first seen Nov 2016▸
release
24 total
Adds iot-logging filter to aws.account for account-level IoT logging inspection.
0.9.53.0 · Oct 2026
· source
· release history
Enables configurable server-side encryption for policy logs output to S3 in AWS via sse_kms_key_id config
0.9.52.0 · Sep 2026
· source
· release history
Adds unused filter for rds-param-group and rds-cluster-param-group resources.
0.9.51.0 · May 2026
· source
· release history
New network-location, security-group, and subnet filters on aws.transfer-server.
0.9.50.0 · Mar 2026
· source
· release history
New upgrade-available filter for AWS ElasticSearch to detect domains eligible for upgrade.
0.9.50.0 · Mar 2026
· source
· release history
Adds WAF filter support for AWS Managed Rule Groups.
0.9.50.0 · Mar 2026
· source
· release history
example
Find EFS file systems with cross-account access granted, then remove overly permissive statements.$ custodian run -s out efs-cross-account.yml # efs-cross-account.yml: policies: - name: efs-cross-account-remediate resource: aws.efs filters: - type: cross-account actions: - type: remove-statements…
0.9.44.0 · Apr 2025
· source
+Cross-Account Access ManagementshippedProvides filters to detect cross-account access and actions to remove overly permissive statements.15 releases · 3 other sources · first seen Jun 2016▸
release
15 total
Replaces SCM basic auth with Entra ID bearer token for azure.function-app operations.
0.9.52.0 · Sep 2026
· source
· release history
Adds cross-account support for aws:PrincipalOrgPaths and whitelisted accounts in policy statements.
0.9.51.0 · May 2026
· source
· release history
New cross-account filter on aws.opensearch-ingestion to detect cross-account pipeline access.
0.9.50.0 · Mar 2026
· source
· release history
New aws.vpc-lattice-listener and aws.vpc-lattice-service-network-association resources for VPC Lattice management.
0.9.50.0 · Mar 2026
· source
· release history
Adds whitelist_patterns option to the cross-account filter to skip deleted IAM principals.
0.9.50.0 · Mar 2026
· source
· release history
New ami-block-public-access filter on aws.account to detect accounts without AMI public-access blocking.
0.9.48.0 · Dec 2025
· source
· release history
example
Use the cross-account filter on OpenSearch Ingestion pipelines to catch pipelines accessible from outside your AWS Organization.$ custodian run -s out policy.yml # policy.yml: policies: - name: opensearch-ingestion-cross-account resource: aws.opensearch-ingestion filters: - type: cross-account
0.9.50.0 · Mar 2026
· source
Find EFS file systems with cross-account access granted, then remove overly permissive statements.$ custodian run -s out efs-cross-account.yml # efs-cross-account.yml: policies: - name: efs-cross-account-remediate resource: aws.efs filters: - type: cross-account actions: - type: remove-statements…
0.9.44.0 · Apr 2025
· source
Detect EFS file systems with cross-account access and remove the offending policy statements to enforce least-privilege.$ custodian run -s out policy-efs-cross-account.yml # policy-efs-cross-account.yml policies: - name: efs-remove-cross-account-access resource: aws.efs filters: - type: cross-account actions: - type:…
0.9.43.0 · Feb 2025
· source
+Report Generation UtilitiesshippedProvides scripts and formatters to generate CSV reports with custom columns, regions, and resource types for audit purposes.15 releases · 2 other sources · first seen Jun 2016▸
Also counts toward: Python scripting support
release
15 total
Adds gcp.service-account-key resource type with enable, disable, and delete actions
0.9.12.0 · Jun 2021
· source
· release history
Adds delete and modify actions for GCP firewall rules (gcp.firewall), plus cost/metric/offhour/onhour/policy-compliant/resource-lock filters for Azure storage containers.
0.9.11.0 · Mar 2021
· source
· release history
Adds delete action and force options/filters for Event Bridge rules (aws.event-rule).
0.9.11.0 · Mar 2021
· source
· release history
schema changes adds the delete-inline-policies action to aws.iam-group resources
0.9.10.0 · Jan 2021
· source
· release history
schema changes adds the delete-ssh-keys action to aws.iam-user resources
0.9.10.0 · Jan 2021
· source
· release history
Adds remove-statements action and cross-account filter to aws.elasticsearch resource type.
0.9.9.0 · Dec 2020
· source
· release history
example
Automate deletion of GKE clusters that no longer have an owner tag.$ - policy: name: delete-orphan-gke resource: gcp.gke-cluster filters: - "tag:Environment": absent actions: - type: delete
0.9.7.0 · Oct 2020
· source
Generate a CSV report with custom columns including resource type and region.$ c7n-cli run policy.yml --output-dir ./reports --format csv --custom-fields 'type,region'
0.8.20.0 · Nov 2016
· source
+AWS Backup and Recovery FiltersshippedAdds backup-related filters for DynamoDB, EFS, Redshift, RDS, and FSx resources.12 releases · 3 other sources · first seen Jul 2016▸
release
12 total
Adds azure.snapshot resource with a delete action.
0.9.41.0 · Sep 2024
· source
· release history
Adds delete action to gcp.bq-dataset resource, allowing datasets to be removed via policies
0.9.38.0 · Jun 2024
· source
· release history
aws.timestream-table gains the consecutive-aws-backups filter to detect tables lacking continuous backup coverage
0.9.37.0 · Jun 2024
· source
· release history
Adds the snapshots filter to aws.ebs resources to evaluate associated EBS snapshots in policies.
0.9.36.0 · Apr 2024
· source
· release history
rds-snapshot.instance filter added to associate snapshots with RDS instances
0.9.30.0 · Aug 2023
· source
· release history
rds.pending-maintenance filter added to RDS instances for pending maintenance events
0.9.30.0 · Aug 2023
· source
· release history
example
Inventory all Route 53 Resolver rules in your account to find shared or overly-permissive DNS forwarding rules.$ custodian run -s out resolver-rules.yml # resolver-rules.yml: policies: - name: resolver-rule-inventory resource: aws.resolver-rule
0.9.49.0 · Jan 2026
· source
Detect DynamoDB tables with cross-account access or overly permissive resource policies in a single policy sweep.$ custodian run --output-dir=out policy-dynamodb-cross-account.yml
0.9.42.0 · Nov 2024
· source
Define a policy to delete BigQuery datasets that are older than 30 days in GCP.$ policies: - name: delete-old-bq-datasets resource: gcp.bq-dataset filters: - type: value key: creationTimestamp op: ge value_type: age value: 30 actions: - type: delete
0.9.38.0 · Jun 2024
· source
+Resource Lifecycle Management ActionsshippedAdds actions to manage the lifecycle of resources, including deletion, snapshotting, and permission modification.11 releases · 1 other source · first seen Jul 2016▸
release
11 total
Adds delete action to aws.vpc-endpoint resources, enabling policy-driven removal of unwanted VPC endpoints.
0.9.52.0 · Sep 2026
· source
· release history
aws-glue-catalog now supports the remove-statements action.
0.9.3.0 · Jun 2020
· source
· release history
aws-ssm-parameter resources support the delete action.
0.9.3.0 · Jun 2020
· source
· release history
Adds IAM role delete action in the aws module #3741
0.8.43.0 · Apr 2019
· source
· release history
Adds account increase-limit support for min units of increase
0.8.30.0 · Aug 2018
· source
· release history
Extends mark-for-op action with hours/minutes duration support
0.8.30.0 · Aug 2018
· source
· release history
example
Flag KMS keys that have not been used recently so they can be reviewed and scheduled for deletion.$ policies: - name: flag-dormant-kms-keys resource: aws.kms-key filters: - type: last-usage value: 90 op: greater-than value_type: age actions: - type: mark-for-op op: disable days: 7
0.9.52.0 · Sep 2026
· source
+Cross-Account Organization OrchestrationshippedSupports organizational scope variables and execution logic to manage policies across multiple cloud accounts.9 releases · 2 other sources · first seen Aug 2017▸
release
9 total
Promotes aws-accounts script to a proper CLI command in c7n_org.
0.9.50.0 · Mar 2026
· source
· release history
Adds c7n-org run-script shell passthrough improvement using shlex parsing for more robust argument handling.
0.9.42.0 · Nov 2024
· source
· release history
Adds aws.org-policy resource type to query policies attached to Organizational Units or accounts
0.9.34.0 · Jan 2024
· source
· release history
Adds aws.org-unit resource type to query Organizational Units within an organization
0.9.34.0 · Jan 2024
· source
· release history
c7n-org supports org level vars in config file (#8033)
0.9.22.0 · Jan 2023
· source
· release history
Supports specifying policy glob on CLI in tools/c7n_policystream via new argument
0.9.13.0 · Aug 2021
· source
· release history
example
Query member accounts in your AWS Organization using the new org-account resource$ c7n-org run -s output/ -c ./config.yml policy.yaml # Inside policy.yaml for aws.org-account: resources: aws.org-account
0.9.34.0 · Jan 2024
· source
Run policies on all accounts except specific ones using c7n-org.$ c7n-org run --profile default -s out/ --not-accounts account-to-skip account-to-skip2 -u policy.yml
0.9.21.0 · Dec 2022
· source
+Azure Service Management ExpansionshippedsuggestedAdds support for Azure OpenShift, Service Bus, Spring Apps, and Network Security Group diagnostic features.9 releases · first seen Apr 2023▸
Suggested capability: Log collection. This is our guess, not confirmed.
release
9 total
Adds remove-rules action to azure.networksecuritygroup resource for removing security rules
0.9.53.0 · Oct 2026
· source
· release history
Adds remove-rules action to azure.networksecuritygroup.
0.9.53.0 · Oct 2026
· source
· release history
Adds webapp filter to azure.appserviceplan.
0.9.44.0 · Apr 2025
· source
· release history
Adds webapp filter to azure.appserviceplan to find plans hosting specific web apps.
0.9.43.0 · Feb 2025
· source
· release history
Adds jit-policy-port filter to azure.vm for Just-In-Time access policy auditing.
0.9.43.0 · Feb 2025
· source
· release history
Adds azure.open-shift resource type for Azure OpenShift
0.9.27.0 · May 2023
· source
· release history
+WAF Integration Actions and FiltersshippedAdds actions to set WAF configurations and filters to check WAF status for API Gateway, CloudFront, ELB, and REST stages.6 releases · 1 other source · first seen Feb 2018▸
release
Adds WAF filter support for AWS Managed Rule Groups.
0.9.50.0 · Mar 2026
· source
· release history
Adds metrics filter to aws.fsx covering all FSx file system types.
0.9.47.0 · Sep 2025
· source
· release history
New waf filter on azure.cdnprofile and azure.front-door resources to check WAF status
0.9.29.0 · Jul 2023
· source
· release history
waf-enabled filter and set-waf action added to aws.rest-stage for API Gateway, CloudFront, and ELB
0.9.18.0 · Aug 2022
· source
· release history
Adds set-wafv2 action and wafv2-enabled filter to aws.app-elb, aws.distribution, and aws.rest-stage
0.9.17.0 · Jun 2022
· source
· release history
Multi-cloud provider registry enables running policies against non-AWS cloud providers
0.8.28.0 · Feb 2018
· source
· release history
example
Enable WAFv2 logging to a Kinesis Firehose delivery stream for all WebACLs missing a logging configuration.$ custodian run -s out policy-wafv2-logging.yml # policy-wafv2-logging.yml: policies: - name: wafv2-enable-logging resource: aws.wafv2 filters: - type: value key: LoggingConfiguration value: absent…
0.9.48.0 · Dec 2025
· source
+JSON Diff Filter ExpansionshippedExpands the json-diff filter capability to additional resource types including AWS Batch, Kafka, SageMaker, Step Functions, Workspaces, Backup, ECR, ECS, and EFS.5 releases · 1 other source · first seen Nov 2021▸
release
Adds json-diff filter to aws.app-elb-target-group, aws.artifact-domain, aws.comprehend-flywheel, aws.datasync-agent, aws.glue-database, aws.sagemaker-data-quality-job-definition, aws.sagemaker-model-bias-job-definition, aws.sagemaker-model-explainability-job-definition,…
0.9.49.0 · Jan 2026
· source
· release history
Adds json-diff filter to aws.appstream-fleet, aws.kms, aws.ssm-document, and aws.user-pool resources
0.9.34.0 · Jan 2024
· source
· release history
json-diff filter added to aws.batch-compute, aws.batch-queue, aws.kafka, aws.sagemaker-model, aws.step-machine, and aws.workspaces
0.9.18.0 · Aug 2022
· source
· release history
Adds json-diff filter to aws.backup-plan, aws.backup-vault, aws.ecr, aws.ecs, and aws.efs resources
0.9.14.0 · Nov 2021
· source
· release history
example
Detect EFS file systems with cross-account access and remove the offending policy statements to enforce least-privilege.$ custodian run -s out policy-efs-cross-account.yml # policy-efs-cross-account.yml policies: - name: efs-remove-cross-account-access resource: aws.efs filters: - type: cross-account actions: - type:…
0.9.43.0 · Feb 2025
· source
+Mailer Service Quota FormattingshippedAdds formatting support specifically for service-quota reports in the c7n_mailer component.4 releases · 2 other sources · first seen Mar 2017▸
release
Adds cost-optimization filter to aws.asg, aws.ebs, aws.ec2, aws.ecs-service, and aws.lambda resources
0.9.34.0 · Jan 2024
· source
· release history
Updates c7n_mailer to add formatting support for service-quota reports
0.9.15.0 · Feb 2022
· source
· release history
Enables proper ARN handling in AWS GovCloud and China partitions (aws region logic updated).
0.8.41.0 · Feb 2019
· source
· release history
Added SES region configuration capability
0.8.23.1 · Mar 2017
· source
· release history
example
Filter Azure SQL Servers that have auditing policies disabled or misconfigured$ c7n run -s output/ azure-sql-audit.yaml --dryrun
0.9.35.0 · Mar 2024
· source
Apply cost optimization filters to identify underutilized EC2 instances or ASGs$ # Inside policy.yaml for aws.ec2: filters: - type: cost-optimization enabled: true
0.9.34.0 · Jan 2024
· source
+Bedrock AI Resource SupportshippedAdds resource types for Bedrock agents, customization jobs, knowledge bases, and custom models.4 releases · 1 other source · first seen Nov 2023▸
release
New aws.bedrock-inference-profile resource with delete action for managing Bedrock inference profiles.
0.9.50.0 · Mar 2026
· source
· release history
New aws.bedrock-model-invocation-job resource for managing Bedrock model invocation jobs.
0.9.50.0 · Mar 2026
· source
· release history
New aws.bedrock-agent, aws.bedrock-customization-job, and aws.bedrock-knowledge-base resource types added
0.9.35.0 · Mar 2024
· source
· release history
Adds aws.bedrock-custom-model resource type for managing custom models in Amazon Bedrock
0.9.33.0 · Nov 2023
· source
· release history
example
Audit Bedrock foundation models to identify any that lack guardrail configurations in your AWS environment.$ custodian run -s output policy-bedrock-fm.yml # policy-bedrock-fm.yml: policies: - name: bedrock-foundation-model-audit resource: aws.bedrock-foundation-model
0.9.51.0 · May 2026
· source
+Cloud Control Provider SupportshippedSupports AWS Config Cloud Control schema types to discover and manage resources via experimental cloud control provider.5 releases · first seen Feb 2019▸
release
Adds is-log-forwarding filter to aws.directory for checking Directory Service log forwarding status.
0.9.44.0 · Apr 2025
· source
· release history
Adds native OCI output support for logging and blob/object storage destinations.
0.9.31.0 · Sep 2023
· source
· release history
Adds awscc.* resources covering AWS Config Cloud Control schema types (e.g., accessanalyzer_analyzer, apigateway_*).
0.9.19.0 · Oct 2022
· source
· release history
Adds awscc experimental cloud control provider supporting hundreds of new resource types like awscc.apigateway_domainname, awscc.backup_backupplan, and awscc.cloudformation_stackset
0.9.15.0 · Feb 2022
· source
· release history
Adds support for Windows client upload of serverless policies in Azure tooling.
0.8.41.0 · Feb 2019
· source
· release history
+Mailer Notification and Replay EnhancementsshippedsuggestedUpdates the mailer component to support Slack notifications, SQS event source emulation, and service quota formatting.5 releases · first seen Mar 2017▸
Suggested capability: Log replay. This is our guess, not confirmed.
release
c7n-mailer replay now supports Slack notifications and SQS event source emulation
0.9.24.0 · Mar 2023
· source
· release history
New default.html mail template option
0.8.23.1 · Mar 2017
· source
· release history
New environment variables to specify Salactus options
0.8.23.1 · Mar 2017
· source
· release history
contact_tags now accepts multiple notification targets (emails)
0.8.23.1 · Mar 2017
· source
· release history
+Policy Language Filter EnhancementsshippedAdds advanced filtering capabilities including regex extraction, date comparison, and logical blocks.4 releases · 1 other source · first seen Jun 2019▸
release
Supports integer numbers directly as days and hours in time-based filters (e.g., days: 30 instead of datetime.timedelta(days=30))
0.9.5.0 · Aug 2020
· source
· release history
Boolean filter blocks (or, and, not) are now validated recursively, which may cause validation errors for invalid policies that previously passed
0.8.45.0 · Sep 2019
· source
· release history
Enables regex-based value extraction in value filters using the new regex sub-key.
0.8.44.0 · Jun 2019
· source
· release history
Adds value_type: date option to value filters to enable date-typed data extraction and comparison.
0.8.44.0 · Jun 2019
· source
· release history
example
Simplify time-based filters by using plain integers for days/hours in your policy configuration, reducing verbosity.$ c7n run -s output/ policy_with_int_days.yaml
0.9.5.0 · Aug 2020
· source
+Policy Language Documentation GenerationshippedAuto-generates YAML documentation for valid policy language elements and schema definitions.5 releases · first seen May 2016▸
Also counts toward: Command-line interface
release
Adds --outline option to the c7n-schema CLI command
0.9.2.0 · May 2020
· source
· release history
Adds c7n schema multiple cloud provider support via the c7n schema command
0.8.30.0 · Aug 2018
· source
· release history
Adds --debug option to the version subcommand to print system information
0.8.23.0 · Feb 2017
· source
· release history
Enables tab completion via argcomplete on the command line
0.8.23.0 · Feb 2017
· source
· release history
Adds tools/vocabulary.py utility to auto-generate YAML documentation of valid policy language elements
0.8.11 · May 2016
· source
· release history
+Cost Optimization FiltersshippedAdds cost-optimization filters to identify underutilized resources across AWS EC2, ASG, EBS, ECS, and Lambda.4 releases · first seen Jan 2024▸
release
Honors missing-value: 0 for metrics filters in GCP
0.9.52.0 · Sep 2026
· source
· release history
New aws.savings-plan resource for querying and managing AWS Savings Plans.
0.9.50.0 · Mar 2026
· source
· release history
New ssm-inventory filter on aws.ec2 to query EC2 instances by SSM inventory and installed packages.
0.9.39.0 · Jul 2024
· source
· release history
Adds cost-optimization filter to aws.asg, aws.ebs, aws.ec2, aws.ecs-service, and aws.lambda resources
0.9.34.0 · Jan 2024
· source
· release history
+Mailer Transport ConfigurationshippedAllows configuration of email delivery mechanisms including proxy settings and SMTP transport.3 releases · 1 other source · first seen Jun 2019▸
release
Replaces SCM basic auth with Entra ID bearer token for Azure Functions
0.9.52.0 · Sep 2026
· source
· release history
c7n-mailer action supports proxy configuration via proxy parameter
0.8.45.0 · Sep 2019
· source
· release history
Introduces SMTP transport support for Azure mailer via the c7n-mailer configuration, enabling email delivery to on-prem or custom SMTP servers.
0.8.44.0 · Jun 2019
· source
· release history
example
Configure c7n-mailer to inject custom headers into sent emails.$ mailer: transport: type: smtp host: smtp.example.com port: 587 email_headers: X-Custom-Header: 'custodian-automation' X-Sender-ID: 'policy-runner'
0.9.9.0 · Dec 2020
· source
+IAM Access Key Resource SupportshippedEnables direct policy targeting of IAM access keys.4 releases · first seen Mar 2017▸
release
New upgrade-available filter for AWS EKS to detect clusters with a newer Kubernetes version available.
0.9.50.0 · Mar 2026
· source
· release history
New service-specific-credentials filter on aws.iam-user to audit IAM user service-specific credentials.
0.9.50.0 · Mar 2026
· source
· release history
New aws.iam-access-key resource enables policies targeting IAM access keys directly.
0.9.48.0 · Dec 2025
· source
· release history
Support for the IAM credential report on the account level
0.8.23.1 · Mar 2017
· source
· release history
+Custom JMESPath Extension PointsshippedAllows adding custom functions to JMESPath queries via core extension points.4 releases · first seen Nov 2016▸
release
Adds listener-rule filter to aws.app-elb for inspecting ALB routing rules.
0.9.49.0 · Jan 2026
· source
· release history
Adds from_json JMESPath function to the value filter for parsing embedded JSON strings during filtering.
0.9.41.0 · Sep 2024
· source
· release history
Enables adding custom functions to JMESPath queries via core extension points
0.9.27.0 · May 2023
· source
· release history
Value filters can now retrieve data from URLs and S3 in multiple formats
0.8.20.0 · Nov 2016
· source
· release history
+Tagging Policy ActionsshippedProvides tagging actions (auto-tag-user, copy-related-tag, remove-tag, rename-tag) and filters for AWS Batch resources.4 releases · first seen Nov 2016▸
release
Adds detail spec to aws.storage-gateway, unlocking tag management actions (tag, remove-tag, rename-tag, copy-related-tag, auto-tag-user, mark-for-op) and marked-for-op filter.
0.9.41.0 · Sep 2024
· source
· release history
New content and marked-for-op filters plus tagging actions (tag, remove-tag, rename-tag, copy-related-tag, auto-tag-user, mark-for-op) on aws.ssm-document.
0.9.39.0 · Jul 2024
· source
· release history
Adds tagging actions (auto-tag-user, copy-related-tag, remove-tag, rename-tag, tag) and marked-for-op filter to aws.batch-compute, aws.batch-definition, and aws.batch-queue resources
0.9.34.0 · Jan 2024
· source
· release history
ami launch-permission removal action for AMI management
0.8.20.0 · Nov 2016
· source
· release history
+GCP Monitoring and Secret ManagementshippedsuggestedAdds resource types and filters for GCP Log-based metrics, Secrets Manager, Cloud Run, and Organization resources.4 releases · first seen Feb 2023▸
Suggested capability: Metrics collection. This is our guess, not confirmed.
release
Adds gcp.artifact-repository resource type for Artifact Registry repositories
0.9.27.0 · May 2023
· source
· release history
Adds gcp.secret resource type to scan GCP Secrets Manager secrets
0.9.25.0 · Apr 2023
· source
· release history
Adds gcp.cloud-run-service and gcp.cloud-run-job resource types for Cloud Run management
0.9.25.0 · Apr 2023
· source
· release history
GCP log-project-metric resource adds a metric alert filter for monitoring log-based metrics (PR #8155)
0.9.23.0 · Feb 2023
· source
· release history
+Modify ECR Policy ActionshippedsuggestedAdds the ability to programmatically modify ECR repository policy statements using the modify-ecr-policy action.2 releases · 2 other sources · first seen Aug 2016▸
Suggested capability: Data access governance. This is our guess, not confirmed.
release
Adds modify-ecr-policy action for the aws.ecr resource to programmatically modify ECR repository policy statements
0.9.15.0 · Feb 2022
· source
· release history
Adds support for executing custodian policies as custom AWS Config rules with integrated provisioning.
0.8.19 · Aug 2016
· source
· release history
example
Configure a policy to use the new modify-ecr-policy action on ECR repositories.$ resources: - aws.ecr actions: - type: modify-ecr-policy policy: <new-policy-document>
0.9.15.0 · Feb 2022
· source
Execute a custodian policy as a custom AWS Config rule directly from your configuration.$ custodian run -s output/ my-config-rule-policy.yml --run-as-aws-config
0.8.19 · Aug 2016
· source
+Policy Metadata and TaggingshippedAllows associating metadata tags with policies for classification, grouping, and organizational tracking.3 releases · 1 other source · first seen May 2016▸
release
Adds metadata key to policy definitions for attaching custom metadata fields
0.9.5.0 · Aug 2020
· source
· release history
Policies themselves can now be tagged via CloudFormation
0.8.20.0 · Nov 2016
· source
· release history
Adds support for tagging policies with tags field for classification and grouping
0.8.11 · May 2016
· source
· release history
example
Attach metadata tags like owner or cost-center to your policy output for better tracking and auditing in Cloud Custodian reports.$ c7n run -s output/ policy.yaml
0.9.5.0 · Aug 2020
· source
+High-Volume Execution OptimizationshippedOptimizes the cyber toolchain for large-scale resource sets through batch notifications and PyPy execution support.4 releases · first seen May 2016▸
release
logging supports configurable account, region log sinks and stream names via policy config
0.8.45.0 · Sep 2019
· source
· release history
Adds support for max-resources-percent to limit resource consumption by percentage of total account inventory.
0.8.31.0 · Sep 2018
· source
· release history
Enable batch notifications in groups of 500 when handling large resource sets
0.8.6 · May 2016
· source
· release history
Add support for running on PyPy to achieve ~30% performance improvement on S3 full scans
0.8.6 · May 2016
· source
· release history
+Kubernetes Custom Resource DiscoveryshippedAdds a k8s.custom-resource resource type to enable dynamic discovery and policy targeting of Custom Resource Definitions (CRDs) in Kubernetes.3 releases · first seen Apr 2019▸
release
Adds custom-resource type in Kube schema for dynamic CRD discovery
0.9.53.0 · Oct 2026
· source
· release history
Adds k8s.custom-resource resource type for dynamic CRD discovery.
0.9.53.0 · Oct 2026
· source
· release history
Adds support for custom resources definitions in the k8s module #3717
0.8.43.0 · Apr 2019
· source
· release history
+AWS Bedrock AI Resource SupportshippedsuggestedAdds resource types for Bedrock agents, inference profiles, customization jobs, and custom models.3 releases · first seen Mar 2026▸
Suggested capability: Metrics collection. This is our guess, not confirmed.
release
Adds synthetic total-tokens metric to aws.bedrock-inference-profile.
0.9.52.0 · Sep 2026
· source
· release history
New aws.bedrock-inference-profile resource with delete action for managing Bedrock inference profiles.
0.9.50.0 · Mar 2026
· source
· release history
New aws.bedrock-model-invocation-job resource for managing Bedrock model invocation jobs.
0.9.50.0 · Mar 2026
· source
· release history
+VPC Endpoint Service GovernanceshippedEnables policies over VPC endpoint service configurations for access control.3 releases · first seen Jul 2025▸
release
New VpcEndpointPolicySupported filter (service-details) on aws.vpc-endpoint to check endpoint policy support.
0.9.50.0 · Mar 2026
· source
· release history
New resolver-query-logging filter on aws.vpc to check VPC DNS query logging configuration.
0.9.48.0 · Dec 2025
· source
· release history
New aws.vpc-endpoint-service-configuration resource enables policies over VPC endpoint service configurations.
0.9.46.0 · Jul 2025
· source
· release history
+Config Compliance Filter ExpansionshippedExpands the config-compliance filter capability to include AWS Account, Artifacts, CodeDeploy, Kinesis, Transit Gateway, and Batch resources.3 releases · first seen Feb 2022▸
release
Adds config-compliance filter to aws.comprehend-flywheel, aws.sagemaker-model-bias-job-definition, and aws.ses-dedicated-ip-pool resources.
0.9.49.0 · Jan 2026
· source
· release history
Adds config-compliance filter to aws.account
0.9.17.0 · Jun 2022
· source
· release history
Adds config-compliance filter for aws.artifact-domain and json-diff filter for aws.codedeploy-app, aws.codedeploy-group, aws.kinesis, and aws.transit-gateway
0.9.15.0 · Feb 2022
· source
· release history
+AppMesh Resource SupportshippedAdds resource types for AppMesh meshes and virtual gateways for service mesh management.3 releases · first seen Mar 2024▸
release
New App Mesh filters: route, router, and service on aws.appmesh-mesh; gateway-route on aws.appmesh-virtualgateway.
0.9.39.0 · Jul 2024
· source
· release history
Adds aws.appmesh-virtualnode resource support for App Mesh mesh policies.
0.9.36.0 · Apr 2024
· source
· release history
aws.appmesh-mesh and aws.appmesh-virtual-gateway resources added for AppMesh management
0.9.35.0 · Mar 2024
· source
· release history
+AWS Config Connector Resource SupportshippedAdds support for managing resources via the AWS Cloud Control Provider schema types.3 releases · first seen Sep 2020▸
release
json-diff filter removed from aws.rds-proxy resource
0.9.35.0 · Mar 2024
· source
· release history
Adds awscc.accessanalyzer_analyzer, awscc.acmpca_certificateauthority, awscc.amplify_app, awscc.apigateway_stage, awscc.backup_backupvault, and dozens more AWS Config Connector resources (full list in release notes)
0.9.22.0 · Jan 2023
· source
· release history
Adds config_rule support to tools/ops/policylambda enabling AWS Config rule integration.
0.9.6.0 · Sep 2020
· source
· release history
+Kubernetes Admission Controller Policy EnforcementshippedProvides an admission controller mode and deployment capability to enforce policies on new Kubernetes pod submissions.2 releases · 1 other source · first seen Oct 2022▸
release
Adds python3.12 runtime support for lambda policies, defaulting to python3.11
0.9.34.0 · Jan 2024
· source
· release history
c7n_kube mode/k8s-admission adds admission controller mode for Kubernetes policy enforcement
0.9.20.0 · Oct 2022
· source
· release history
example
Deploy Cloud Custodian Kubernetes admission controller to enforce policies on new pod submissions.$ helm install c7n-kates cloud-custodian/c7n-kates --set mode=k8s-admission
0.9.20.0 · Oct 2022
· source
+TencentCloud Provider SupportshippedAdds Tencent Cloud as a supported cloud provider with initial support for CVM resource types.3 releases · first seen May 2016▸
release
Adds oci provider with resources: bucket, compartment, cross_connect, group, instance, subnet, user, vcn, and zone.
0.9.28.0 · Jun 2023
· source
· release history
Introduces tencentcloud as a supported cloud provider with cvm resource support.
0.9.19.0 · Oct 2022
· source
· release history
Improves CloudWatch Events integration with better support for multiple manually configured CloudTrail events within a single policy
0.8.11 · May 2016
· source
· release history
+Configuration Reuse via VariablesshippedEnables the use of a vars section in configuration files to define reusable YAML references for repeated policy blocks.3 releases · first seen May 2016▸
release
Introduces global variable interpolation across policies for shared configuration.
0.8.31.0 · Sep 2018
· source
· release history
The builtin variable name format is renamed to fmt
0.8.25.0 · Aug 2017
· source
· release history
Adds vars section to config files to allow YAML references to repeated configuration blocks
0.8.11 · May 2016
· source
· release history
+Policy Configuration VariabilityshippedAllows injecting variables into policy configurations at runtime via CLI arguments to avoid static configuration files.2 releases · first seen Jun 2020▸
release
Adds --vars-file CLI argument to inject variables into policies at runtime
0.9.53.0 · Oct 2026
· source
· release history
gcp-functions policies now use the standard policy loader for initialization.
0.9.3.0 · Jun 2020
· source
· release history
+Cross-Account Resource FilteringshippedsuggestedProvides filters to detect and manage resources that are accessible across account boundaries.2 releases · first seen Jan 2019▸
Suggested capability: Data access governance. This is our guess, not confirmed.
release
Adds org-unit whitelisting to the cross-account filter across AWS resources.
0.9.52.0 · Sep 2026
· source
· release history
Adds aws.lambda-layer resource with cross-account filter and remove-statements action
0.8.33.0 · Jan 2019
· source
· release history
+S3 Output Cross-Account PermissionsshippedsuggestedRequires and documents the GetBucketLocation permission for S3 output to cross-account buckets.2 releases · first seen Aug 2022▸
Suggested capability: Log routing. This is our guess, not confirmed.
release
Adds configurable server-side encryption for S3 policy log output.
0.9.52.0 · Sep 2026
· source
· release history
Using the s3 output for cross-account buckets now requires the GetBucketLocation permission on the target bucket
0.9.18.0 · Aug 2022
· source
· release history
+VPC Endpoint Lifecycle ManagementshippedAdds actions to delete VPC endpoints and filters to identify idle resources for cost optimization.1 release · 1 other source · first seen Sep 2026▸
release
Adds delete action to aws.vpc-endpoint resources, enabling policy-driven removal of unwanted VPC endpoints.
0.9.52.0 · Sep 2026
· source
· release history
example
Delete idle VPC endpoints tagged for a specific service to reduce attack surface and cut PrivateLink costs.$ policies: - name: delete-unused-aoss-vpc-endpoints resource: aws.vpc-endpoint filters: - type: value key: ServiceName op: contains value: "aoss" actions: - type: delete
0.9.52.0 · Sep 2026
· source
+GCP Resource Governance ExpansionshippedAdds support for managing GCP API keys and SQL backup runs with lifecycle actions.2 releases · first seen May 2026▸
release
Adds delete and patch actions for GCP api-key resources.
0.9.51.0 · May 2026
· source
· release history
Adds delete action for GCP sqlbackuprun resources.
0.9.51.0 · May 2026
· source
· release history
+AWS Organization GovernanceshippedSupports governing AWS Organization members, policies, and units with tagging and policy compliance filters.2 releases · first seen Sep 2025▸
Also counts toward: Command-line interface
release
Promotes aws-accounts script to a proper CLI command in c7n_org.
0.9.50.0 · Mar 2026
· source
· release history
Adds tagging actions (tag, remove-tag, rename-tag, auto-tag-user, copy-related-tag, mark-for-op) and marked-for-op filter to aws.org-account, aws.org-policy, and aws.org-unit.
0.9.47.0 · Sep 2025
· source
· release history
+AWS Comprehend Resource SupportshippedAdds resource types and filters for Amazon Comprehend NLP models, jobs, and endpoints.2 releases · first seen Jun 2025▸
Adds four new AWS Comprehend resource types: aws.comprehend-document-classifier, aws.comprehend-endpoint, aws.comprehend-entity-recognizer, and aws.comprehend-flywheel.
0.9.45.0 · Jun 2025
· source
· release history
+Tencent Cloud CAM Policy FilteringshippedAdds filters to detect and manage unused CAM policies in Tencent Cloud.2 releases · first seen Jul 2016▸
release
Adds cam-policy-used filter support for finding unused CAM policies in Tencent Cloud via boolean flag.
0.9.45.0 · Jun 2025
· source
· release history
Adds security group permission filtering (ingress, egress) and actions (remove-permissions)
0.8.17 · Jul 2016
· source
· release history
+Cloud Custodian Organization Variable SupportshippedEnables the use of variables within run-script arguments for c7n-org operations.2 releases · first seen Oct 2022▸
release
Adds values_from support for DynamoDB as a data source in policy filters.
0.9.39.0 · Jul 2024
· source
· release history
c7n-org now supports variables in run-script arguments
0.9.20.0 · Oct 2022
· source
· release history
+AWS Organization Member Account QueryingshippedAdds resource types for querying AWS Organization member accounts and organizational units.2 releases · first seen Jan 2024▸
release
Adds aws.org-account resource type to query AWS Organization member accounts
0.9.34.0 · Jan 2024
· source
· release history
Adds aws.org-unit resource type to query Organizational Units within an organization
0.9.34.0 · Jan 2024
· source
· release history
+OpenStack Resource SupportshippedAdds support for OpenStack image, secret, and security-group resource types.2 releases · first seen Mar 2021▸
release
Adds openstack.image, openstack.secret, and openstack.security-group resource types
0.9.33.0 · Nov 2023
· source
· release history
Adds the openstack provider (alpha) to Cloud Custodian, enabling policy enforcement for OpenStack resources.
0.9.11.0 · Mar 2021
· source
· release history
+Native OCI Output SupportshippedsuggestedEnables logging and blob/object storage output destinations using native OCI interfaces.2 releases · first seen Jul 2020▸
Suggested capability: Log storage. This is our guess, not confirmed.
release
Adds native OCI output support for logging and blob/object storage destinations.
0.9.31.0 · Sep 2023
· source
· release history
Add GCP blob and log native outputs for audit trails
0.9.4.0 · Jul 2020
· source
· release history
+GCP Project Configuration FlexibilityshippedAllows configuring the GCP project ID via environment variable or command-line argument without modifying policy files.1 release · 1 other source · first seen Aug 2022▸
release
GCP_PROJECT environment variable is now supported to configure the GCP project ID
0.9.18.0 · Aug 2022
· source
· release history
example
Set the GCP project without modifying policy files$ GCP_PROJECT=my-project c7n-schema -r gcp.sql-instance
0.9.18.0 · Aug 2022
· source
+AWS Config Poll Rule ModeshippedEnables policy execution triggered by AWS Config rule evaluation via a dedicated poll mode.2 releases · first seen May 2020▸
release
Adds config-poll-rule mode that outputs post-evaluation results in chunked format.
0.9.11.0 · Mar 2021
· source
· release history
Adds config-poll-rule mode for AWS Config evaluation
0.9.2.0 · May 2020
· source
· release history
+Policy Reporting Output FormatsshippedSupports generating policy execution reports in multiple formats including JSON.2 releases · first seen Apr 2019▸
Also counts toward: JSON data export
release
Report supports JSON output format #3692
0.8.43.0 · Apr 2019
· source
· release history
Adds report subcommand compatibility via id on metadata #3697
0.8.43.0 · Apr 2019
· source
· release history
+Serverless Policy SchedulingshippedEnables periodic execution of policies via serverless functions in cloud environments.2 releases · first seen Jan 2019▸
Also counts toward: Scheduled jobs
release
Adds periodic serverless policy support in GCP
0.8.40.0 · Jan 2019
· source
· release history
Adds periodic serverless policy support for GCP
0.8.33.0 · Jan 2019
· source
· release history
+AWS Service Quotas Resource SupportshippedAdds resource type support for querying and managing AWS Service Quotas.1 release · first seen Sep 2026▸
release
Adds Services and DefaultServiceQuotas to aws.service-quota resource via quota.py.
0.9.52.0 · Sep 2026
· source
· release history
+GCP DNS Security ExpansionshippedEnables management of GCP managed DNS zones, specifically supporting the enforcement of DNSSEC settings for domain integrity.1 other source · first seen Sep 2026▸
example
Enable DNSSEC on all GCP managed zones that do not yet have it, enforcing DNS integrity at scale.$ policies: - name: enforce-dnssec-on-managed-zones resource: gcp.dns-managed-zone filters: - type: value key: dnssecConfig.state value: "on" op: ne actions: - type: enable-dnssec
0.9.52.0 · Sep 2026
· source
+AWS Config Compliance Filter ExpansionshippedExpands the config-compliance filter capability to include additional resource types for compliance monitoring.1 release · first seen Jan 2026▸
release
Adds config-compliance filter to aws.comprehend-flywheel, aws.sagemaker-model-bias-job-definition, and aws.ses-dedicated-ip-pool resources.
0.9.49.0 · Jan 2026
· source
· release history
+AWS Subnet ManagementshippedAdds actions to automate the removal of AWS subnets via policy.1 release · first seen Dec 2025▸
release
New delete action on aws.subnet for automated subnet removal.
0.9.48.0 · Dec 2025
· source
· release history
+EBS Server-Side Query FilteringshippedSupports server-side query filtering for EBS to reduce data fetched during enumeration.1 release · first seen Dec 2025▸
release
Adds EBS server-side query filtering to reduce data fetched during resource enumeration.
0.9.48.0 · Dec 2025
· source
· release history
+ElastiCache Upgrade DetectionshippedAdds filters to identify ElastiCache clusters eligible for engine upgrades.1 release · first seen Dec 2025▸
release
New upgrade-available filter on aws.cache-cluster (ElastiCache) to find clusters eligible for engine upgrades.
0.9.48.0 · Dec 2025
· source
· release history
+GCP Certificate Manager SupportshippedAdds resource type support for managing GCP Certificate Manager certificates.1 release · first seen Dec 2025▸
release
New gcp.certmanager-certificate resource for managing GCP Certificate Manager certificates.
0.9.48.0 · Dec 2025
· source
· release history
+Lambda Event Source Mapping SupportshippedAdds resource types for managing Lambda event source mappings.1 release · first seen Dec 2025▸
release
New aws.lambda-event-source-mapping resource supports managing Lambda event source mappings.
0.9.48.0 · Dec 2025
· source
· release history
+MSK Governance FiltersshippedsuggestedAdds filters to inspect upgrade availability and cross-account access for Amazon MSK clusters.1 release · first seen Dec 2025▸
Suggested capability: Data access governance. This is our guess, not confirmed.
release
New upgrade-available and cross-account filters on aws.kafka for MSK cluster governance.
0.9.48.0 · Dec 2025
· source
· release history
+AWS CloudWatch Synthetics SupportshippedEnables AWS CloudWatch Synthetics as a manageable resource type.1 release · first seen Sep 2025▸
release
Enables aws.cloudwatch-synthetics as a new manageable resource type.
0.9.47.0 · Sep 2025
· source
· release history
+Azure Backup Vault SupportshippedAdds resource type support for governing Azure Backup Vaults.1 release · first seen Sep 2025▸
release
Adds azure.backup-vault resource type for Azure Backup Vault governance.
0.9.47.0 · Sep 2025
· source
· release history
+Azure Machine Learning Workspace ExpansionshippedExpands Azure ML workspace support with full ARM resource actions and compliance filters.1 release · first seen Sep 2025▸
release
Expands azure.machine-learning-workspace with full ARM resource actions (tag, delete, lock, etc.) and filters (cost, diagnostic-settings, metric, policy-compliant, etc.).
0.9.47.0 · Sep 2025
· source
· release history
+EventBridge Pipes SupportshippedAdds resource type support for governing EventBridge Pipes configurations.1 release · first seen Sep 2025▸
release
Adds aws.eventbridge-pipes resource type for governing EventBridge Pipes.
0.9.47.0 · Sep 2025
· source
· release history
+RDS Snapshot Region CopyingshippedAdds actions to copy RDS cluster snapshots across regions for disaster recovery.1 release · first seen Sep 2025▸
Also counts toward: Disaster recovery
release
Adds region-copy action to aws.rds-cluster-snapshot for copying RDS cluster snapshots across regions.
0.9.47.0 · Sep 2025
· source
· release history
+AWS Keyspaces SupportshippedAdds resource types for managing Amazon Keyspaces (Cassandra-compatible) tables and keyspaces.1 release · first seen Jun 2025▸
release
Adds aws.keyspace and aws.keyspace-table resources for managing Amazon Keyspaces (Cassandra-compatible).
0.9.45.0 · Jun 2025
· source
· release history
+AWS Lex v2 Bot SupportshippedAdds resource types and actions for governing Amazon Lex v2 bot aliases.1 release · first seen Jun 2025▸
release
Adds aws.lexv2-bot-alias resource with cross-account filter and delete action for Lex v2 bot aliases.
0.9.45.0 · Jun 2025
· source
· release history
+AWS RAM Resource Share SupportshippedAdds resource types for managing AWS RAM resource shares across accounts.1 release · first seen Jun 2025▸
release
Adds aws.resource-share-self and aws.resource-share-other resources for managing AWS RAM resource shares.
0.9.45.0 · Jun 2025
· source
· release history
+EventBridge Scheduler IntegrationshippedSupports triggering policy evaluation Lambdas via EventBridge Scheduler.1 release · first seen Jun 2024▸
Also counts toward: Scheduled jobs
release
Policy Lambda execution mode now accepts eventbridge-scheduler via a new configuration option
0.9.37.0 · Jun 2024
· source
· release history
+IAM Session Policy InjectionshippedAllows CLI execution to inject session policies for scoped IAM context during cloud interactions.1 release · first seen Jun 2024▸
Also counts toward: Command-line interface
release
CLI supports session policy injection for IAM-scoped execution context
0.9.37.0 · Jun 2024
· source
· release history
+SageMaker ML Job Resource SupportshippedAdds support for managing various Amazon SageMaker ML job resource types.1 release · first seen Jun 2024▸
release
New resource types: aws.sagemaker-compilation-job, aws.sagemaker-data-quality-job-definition, aws.sagemaker-model-bias-job-definition, aws.sagemaker-model-explainability-job-definition, aws.sagemaker-model-quality-job-definition, and aws.sagemaker-processing-job
0.9.37.0 · Jun 2024
· source
· release history
+SageMaker Automation Resource SupportshippedAdds resource types for SageMaker AutoML jobs, clusters, domains, and hyperparameter tuning jobs.1 release · first seen Apr 2024▸
release
Adds aws.sagemaker-auto-ml-job, aws.sagemaker-cluster, aws.sagemaker-domain, and aws.sagemaker-hyperparameter-tuning-job resource types for SageMaker automation policies.
0.9.36.0 · Apr 2024
· source
· release history
+AWS Storage Lens Resource SupportshippedAdds resource type for managing AWS Storage Lens configurations.1 release · first seen Mar 2024▸
release
aws.s3-storage-lens resource added to manage Storage Lens configurations
0.9.35.0 · Mar 2024
· source
· release history
+AWS S3 Express One Zone SupportshippedAdds resource type support for managing S3 Express One Zone directories.1 release · first seen Jan 2024▸
release
Adds aws.s3-directory resource type to manage S3 Express One Zone directories
0.9.34.0 · Jan 2024
· source
· release history
+Azure Synapse Resource SupportshippedAdds resource type support for Azure Synapse Analytics workspaces.1 release · first seen Jan 2024▸
release
Adds azure.synapse resource type for Azure Synapse Analytics workspaces
0.9.34.0 · Jan 2024
· source
· release history
+GCP Service Account Key GovernanceshippedAdds resource support for GCP service account keys with actions to enable, disable, and delete them.1 release · first seen Jun 2021▸
release
Adds gcp.service-account-key resource type with enable, disable, and delete actions
0.9.12.0 · Jun 2021
· source
· release history
+Kubernetes Node Group ManagementshippedAdds support for managing Amazon EKS node group resources with deletion capabilities.1 release · first seen Jun 2021▸
release
Adds aws.eks-nodegroup resource type with delete action
0.9.12.0 · Jun 2021
· source
· release history
+AWS AppFlow Resource SupportshippedAdds resource type support for AWS AppFlow with tag filtering and deletion capabilities.1 release · first seen Mar 2021▸
release
Adds appflow resource type with tag filters/actions and delete capability for AWS AppFlow.
0.9.11.0 · Mar 2021
· source
· release history
+KMS Key Alias Auto-FetchingshippedsuggestedAutomatically fetches and resolves KMS key aliases during policy evaluation.1 release · first seen Jul 2020▸
Suggested capability: Encryption at rest. This is our guess, not confirmed.
release
Add KMS key alias auto-fetching capability
0.9.4.0 · Jul 2020
· source
· release history
+CodeCommit Repository GovernanceshippedAdds filters for CodeCommit repository tags and actions to delete repositories.1 release · first seen May 2020▸
release
Adds codecommit-tags filter and delete action for AWS CodeCommit repositories
0.9.2.0 · May 2020
· source
· release history
+EventBridge Event Rule TaggingshippedProvides actions to manage tags on AWS Config rules and EventBridge event rules.1 release · first seen May 2020▸
release
Adds cwe-event-rule-tagging support for EventBridge event rules
0.9.2.0 · May 2020
· source
· release history
+Schema Documentation ImprovementshippedImproves CLI schema generation to provide more readable outlines for documentation.1 other source · first seen May 2020▸
Also counts toward: Command-line interface
example
Generate schema with outlines for better readability using the new CLI flag.$ c7n-schema --outline > schema.json
0.9.2.0 · May 2020
· source
+VPC Key Pair GovernanceshippedAdds filters to identify unused VPC key pairs and actions to delete them.1 release · first seen May 2020▸
release
Adds vpc-unused-key-pair filter and delete action for AWS VPC
0.9.2.0 · May 2020
· source
· release history
+GCP Instance Management ActionsshippedAdds actions to detach disks and delete log sinks for GCP instances.1 release · first seen Apr 2020▸
release
Adds delete-log-sinks and detach-disks actions for GCP instances
0.9.1.0 · Apr 2020
· source
· release history
+Azure Resource Graph Query ProvidershippedAdds Azure Resource Graph as a supported query provider to expand resource discovery capabilities.1 release · first seen Jan 2020▸
release
Adds add azure resource graph as a query provider for Azure
0.8.46.0 · Jan 2020
· source
· release history
+Multi-Policy ExecutionshippedAllows specifying multiple policies and resource types directly via CLI arguments for bulk execution.1 release · first seen Jan 2020▸
release
Adds --policies and --resource arguments to c7n run to accept multiple values
0.8.46.0 · Jan 2020
· source
· release history
+External Callback IntegrationshippedAllows policies to trigger external HTTP callbacks via a webhook action.1 release · first seen Jun 2019▸
Also counts toward: Outbound webhooks (the product notifies you)
release
Adds the webhook action to trigger external HTTP callbacks from policy execution.
0.8.44.0 · Jun 2019
· source
· release history
+Policy History Stream IntegrationshippedsuggestedConverts version control commit history into policy change deltas for auditing and replay.1 release · first seen Sep 2018▸
Suggested capability: Log replay. This is our guess, not confirmed.
release
Adds new policystream tool to convert a git repo's policy commit history into a delta stream.
0.8.31.0 · Sep 2018
· source
· release history
+DMS Resource GovernanceshippedsuggestedAdds support for querying and managing AWS DMS endpoint resources via policy actions.1 release · first seen Aug 2018▸
Suggested capability: Data access governance. This is our guess, not confirmed.
release
Adds dms endpoint resource and delete action
0.8.30.0 · Aug 2018
· source
· release history
+Hybrid Infrastructure AutomationshippedProvides capabilities to manage software configuration across hybrid cloud environments using SSM agents.1 release · first seen Aug 2018▸
Also counts toward: Agent-based deployment
release
Adds omnissm tool for managing hybrid mode rollout of ssm across cloud instances
0.8.30.0 · Aug 2018
· source
· release history
+User-Defined Lambda ActionsshippedAllows extending the cyber tooling by attaching custom AWS Lambda functions as actions to policies.1 release · first seen Jun 2016▸
release
Custom lambda actions via the ability to extend Custodian with user-defined Lambda functions as actions
0.8.16 · Jun 2016
· source
· release history
Lines in monospace are the tool's own words: help text
parsed from its source, or an endpoint from its API document. Under
release, a line is our summary of a dated release. Under
docs, it is quoted from the tool's own documentation or
website. Each links back to the source it came from.
Command line
View
Source
No command matches.
load a captured run
composed command
No matchesTry a different search, or clear a filter to see more.
option surface across analysed releases
options at that releaseadded, per releaseremoved, per release
option
found in
since
description
No matchesTry a different search, or clear a filter to see more.
option changes per release — drag across the rail to set a range
→
Values are placeholders taken from each option’s declared default.
Nothing is executed here — the output shown is a recording of a run
that already happened.
Score card
Shipping velocityreleases a month, last 12 months
Documentation qualityrelease-notes rubric, 0–100
Breaking-change disciplinehow rarely a release breaks users, and notice given
Maintenance riskquiet time against its own cadence, maintainers
Innovation & surfacenew capabilities, API and MCP surface
Community health
Contributor trenddistinct committers, this year against last
Maintainer concentrationbus factor now against a year ago
Issue backlog trendissues closed per issue opened, 12 months
Responsivenessmedian time to a maintainer’s first reply
Nine scores for Cloud Custodian, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.
Each score is 0–100 on a published rubric, derived from data this site already shows.
A dimension we cannot measure says so — it is never scored 0 and never enters a rank.
How this is scored
Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
Documentation quality — the release-notes rubric published on the analytics page, unchanged.
Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.
Release-note detail over time
See how much detail Cloud Custodian puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.
Issue, contributor and maintainer activity in cloud-custodian/cloud-custodian, 2023-10 – 2026-09,
as of 2026-09-25. Twelve-month figures first; the trend lines run
the whole window.
Contributors77+21 vs prior 12 months
Maintainers15+15 joined · −8 left, last 12 months
Bus factor6committers behind half the commits
Community-filed63%of issues opened, last 12 months
Median time to close42 daysfirst maintainer reply 12 days
Open backlog1,437of 4,661 issues ever filed
Issues opened / month2 · 9communitymaintainers
Open backlog1,437
Contributors / month13
Commits / month24
Stars6,067
Issue themes, last 12 months
bugs 20%
features 44%
other 36%
Counts from the project's public repository and git history; no individuals
are identified. Maintainers are the committers covering 80% of the last year's
commits. how we measure this
Libraries its release ships
What its latest release locks, checked against known advisories.
None of its release's images build from a lockfile we can read.
Add the badge to your README
Maintain this project? The badge links readers straight to this page, so they can
follow every release here.