turbot/steampipe-mod-terraform-aws-compliance

Control: EKS clusters should be configured to have kubernetes secrets encrypted using KMS

Description

Ensure if Amazon Elastic Kubernetes Service clusters are configured to have Kubernetes secrets encrypted using AWS Key Management Service (KMS) keys.

Usage

Run the control in your terminal:

powerpipe control run terraform_aws_compliance.control.eks_cluster_secrets_encrypted

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run terraform_aws_compliance.control.eks_cluster_secrets_encrypted --share

SQL

This control uses a named query:

select
address as resource,
case
when (attributes_std -> 'encryption_config') is null then 'alarm'
when (attributes_std -> 'encryption_config' -> 'resources') @> '["secrets"]' then 'ok'
else 'alarm'
end status,
split_part(address, '.', 2) || case
when (attributes_std -> 'encryption_config') is null then ' encryption disabled'
when (attributes_std -> 'encryption_config' -> 'resources') @> '["secrets"]' then ' encrypted with EKS secrets'
else ' not encrypted with EKS secrets'
end || '.' reason
, path || ':' || start_line
from
terraform_resource
where
type = 'aws_eks_cluster';

Tags