Check ID:
Provider: AWS
Service:
Severity: HIGH
Categories:
Resource type:
glue_data_catalogs_not_publicly_accessibleProvider: AWS
Service:
glueSeverity: HIGH
Categories:
internet-exposedResource type:
OtherWhat this check verifies
AWS Glue Data Catalog resource policies are assessed for configurations that expose the catalog to anyone, such asPrincipal: *, broad resource scopes, or permissive conditions.
The finding highlights catalogs made public through overly permissive resource-based access.
Risk
Public catalog access lets unauthorized actors enumerate schemas, S3 locations, and connection metadata, weakening confidentiality. If writes are exposed, attackers can alter databases/tables, corrupt lineage, and disrupt jobs and queries, harming integrity and availability, and enabling lateral movement to data stores.Recommendation
Enforce least privilege on catalog resource policies:- Avoid
Principal: *and wildcards - Grant only required actions to explicit principals
- Prefer identity-based access or Lake Formation for sharing
- Limit scope with precise ARNs/conditions and monitor changes for defense in depth
Remediation
- CLI
- Terraform
- Dashboard steps
aws glue delete-resource-policy
References
- https://docs.aws.amazon.com/glue/latest/dg/security_iam_service-with-iam.html?icmpid=docs_console_unmapped#security_iam_service-with-iam-resource-based-policies
- https://docs.aws.amazon.com/glue/latest/dg/cross-account-access.html
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = glue_data_catalogs_not_publicly_accessible. 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