Private API has no resource policy restricting access
- Severity
- High
- Service
- API Gateway
- Check ID
- APIGW_PRIVATE_NO_POLICY
What this check finds
This API Gateway REST API uses a PRIVATE endpoint type but has no resource policy. Without a resource policy, the API may be reachable from unintended VPCs or principals.
Passing looks like: Private API has a restricting resource policy.
How to fix it
Attach a resource policy that explicitly allows access only from intended VPC endpoints.
AWS console
API Gateway → REST API → Resource Policy → Edit.
Compliance controls it is evidence for
A failing result counts against these controls in KloudLytics; a passing one is evidence towards them. How compliance mapping works
| Framework | Controls |
|---|---|
| NIST SP 800-53 Rev5 (Moderate) |
|
| NIST Cybersecurity Framework 2.0 |
|
| ISO/IEC 27001:2022 Annex A |
|
Checked on every scan
KloudLytics runs this check each time it scans a connected AWS account, through a read-only role, and lists every affected resource with its region. On Pro and Business a fix is written for the specific resource rather than the general case above. The exact access it needs
More API Gateway checks
- HighAPI Gateway execute-api endpoint not disabled — CloudFront WAF bypassable
- HighAPI Gateway REST API method has no authorization
- HighHTTP API (v2) has no JWT authorizer configured
- MediumAPI Gateway custom domain TLS minimum version below 1.2
- MediumAPI Gateway REST API has no request validators configured
- MediumAPI Gateway stage not associated with a WAF Web ACL
- LowAPI Gateway stage does not have access logging enabled
- LowAPI Gateway stage has no method-level throttling configured