S3 Multi-Region Access Points should have block public access settings enabled
S3 Multi-Region Access Points aggregate access across buckets in multiple AWS Regions. A single misconfigured public access setting on one of these access points can expose data from every underlying bucket simultaneously, across every Region the access point spans. The blast radius is far larger than a single-bucket misconfiguration.
Blocking public access at the Multi-Region Access Point level acts as a guardrail that overrides permissive bucket policies or ACLs on the underlying buckets. Without it, a future bucket policy change or ACL grant could silently open data to the internet through the access point.
Retrofit consideration
Changing block public access settings on an existing Multi-Region Access Point may break applications that rely on public access through the access point. Audit active consumers before enabling.
Implementation
Choose the approach that matches how you manage Terraform.
Use AWS provider resources directly. See docs for the resources involved: aws_s3control_multi_region_access_point.
resource "aws_s3control_multi_region_access_point" "this" {
account_id = "123456789012"
details {
name = "pofix-abc123"
public_access_block {
block_public_acls = true
block_public_policy = true
ignore_public_acls = true
restrict_public_buckets = true
}
region {
bucket = "example-bucket-abc123"
}
}
}
What this control checks
In Terraform, the aws_s3control_multi_region_access_point resource has a details block containing a nested public_access_block. All four arguments inside it must be true to pass: block_public_acls, block_public_policy, ignore_public_acls, and restrict_public_buckets. Setting any of them to false fails the control. Declare the block explicitly with all four values set to true so intent is visible in code review.
Common pitfalls
Defaults can mask intent in Terraform
Omitting
public_access_blockfrom thedetailsblock inaws_s3control_multi_region_access_pointleaves intent implicit. A future refactor or import can introduce drift without any obvious signal. Declare the block explicitly with all four values set totrue.Changing settings may require replacement in Terraform
Depending on AWS API and provider behavior, changes to
public_access_blockon a Multi-Region Access Point can require resource replacement. Review Terraform plans carefully for force-replacement (-/+) before applying.Bucket-level settings still matter
The Multi-Region Access Point's block public access settings are evaluated independently of the underlying bucket's settings. The most restrictive setting wins, but that only applies when traffic routes through the access point. If the access point blocks public access but an underlying bucket does not, direct access to that bucket bypasses the access point entirely and could still be public. This control only validates the access point layer.
Audit evidence
AWS Config rule evaluation results should show each S3 Multi-Region Access Point as COMPLIANT. The CLI command aws s3control get-multi-region-access-point returns the PublicAccessBlock configuration; all four fields should be true. S3 console screenshots of the Multi-Region Access Point's "Block public access" panel with all four checkboxes enabled are also acceptable.
If Security Hub is in use, the finding for this control should show PASSED across all accounts and Regions where Multi-Region Access Points exist. CloudTrail logs for CreateMultiRegionAccessPoint and related management API calls confirm creation and any subsequent changes.
Framework-specific interpretation
Tool mappings
Use these identifiers to cross-reference this control across tools, reports, and evidence.
Compliance.tf Control:
s3_multi_region_access_point_public_access_blockedAWS Config Managed Rule:
S3_ACCESS_POINT_PUBLIC_ACCESS_BLOCKSCheckov Check:
CKV_AWS_392Powerpipe Control:
aws_compliance.control.s3_multi_region_access_point_public_access_blockedProwler Checks:
s3_access_point_public_access_block,s3_multi_region_access_point_public_access_blockAWS Security Hub Controls:
S3.19,S3.24
Last reviewed: 2026-03-09