Check ID:
Provider: AWS
Service:
Severity: MEDIUM
Categories:
Resource type:
apigateway_restapi_cache_encryptedProvider: AWS
Service:
apigatewaySeverity: MEDIUM
Categories:
encryptionResource type:
AwsApiGatewayStageWhat this check verifies
API Gateway REST API stages with caching have cache data encrypted at rest. The evaluation targets stages where caching is enabled and verifies that stored responses are protected via theEncrypt cache data setting.
Risk
Unencrypted cache contents can expose response payloads, tokens, or PII if cache storage, backups, or admin tooling are accessed outside normal controls, harming confidentiality and enabling replay or session hijacking. Disclosure also reveals API patterns, aiding lateral movement and targeted abuse.Recommendation
- Enable encryption at rest for any cached stage (
Encrypt cache data). - Apply least privilege to stage administration and cache invalidation.
- Avoid caching sensitive endpoints; use short TTLs and scheduled cache flushes for defense in depth.
Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
References
- https://www.clouddefense.ai/compliance-rules/nist-800-53-5/au/apigateway-stage-cache-encryption-at-rest-enabled
- https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html#enable-api-gateway-caching
- https://support.icompaas.com/support/solutions/articles/62000233641-ensure-api-gateway-rest-api-cache-data-is-encrypted-at-rest
- https://docs.fortifyfox.com/docs/aws-foundational-security-best-practices/apigateway/api-gw-cache-encrypted/index.html
- https://docs.aws.amazon.com/securityhub/latest/userguide/apigateway-controls.html#apigateway-5
- https://www.clouddefense.ai/compliance-rules/aws-fs-practices/apigateway/foundational-security-apigateway-5
- https://www.cloudanix.com/docs/aws/audit/apigatewaymonitoring/rules/apigateway_enable_encryption_api_cache
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = apigateway_restapi_cache_encrypted. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks