Check provider logo

Glue data catalog connection password is encrypted with a KMS key

glue_data_catalogs_connection_passwords_encryption_enabled

Severityhigh
Serviceglue
by Prowler

AWS Glue Data Catalog settings for connection password encryption are evaluated to confirm an AWS KMS key is configured to encrypt passwords stored in connection properties.

Risk

Unencrypted connection passwords can be read from the catalog or responses, letting attackers or over-privileged users obtain database credentials. This jeopardizes confidentiality of linked data stores, enables unauthorized modifications, and can facilitate lateral movement across environments.

Run this check with Prowler CLI

prowler aws --checks glue_data_catalogs_connection_passwords_encryption_enabled

Recommendation

Enable connection password encryption in the Data Catalog with a customer-managed KMS key.

  • Apply least privilege to the KMS key and Glue roles
  • Prefer keeping responses encrypted (ReturnConnectionPasswordEncrypted)
  • Rotate keys and monitor access for defense in depth

Remediation

CLI

aws glue put-data-catalog-encryption-settings --data-catalog-encryption-settings '{"ConnectionPasswordEncryption":{"ReturnConnectionPasswordEncrypted":true,"AwsKmsKeyId":"<kms_key_arn>"}}'

Native IaC
Terraform
Other
  1. In the AWS Console, go to AWS Glue
  2. Click Settings (left menu)
  3. Under Data catalog settings, check Encrypt connection passwords
  4. Select your KMS key (symmetric CMK)
  5. Click Save

Source Code

Resource Type

Other

References