turbot/steampipe-mod-terraform-gcp-compliance

Control: Check that legacy metadata endpoints are disabled on Kubernetes clusters(disabled by default since GKE 1.12+)

Description

This control checks that legacy metadata endpoints are disabled on Kubernetes clusters(disabled by default since GKE 1.12+).

Usage

Run the control in your terminal:

powerpipe control run terraform_gcp_compliance.control.kubernetes_cluster_legacy_endpoints_disabled

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run terraform_gcp_compliance.control.kubernetes_cluster_legacy_endpoints_disabled --share

SQL

This control uses a named query:

select
address as resource,
case
when (attributes_std -> 'node_config' -> 'metadata' ->> 'disable-legacy-endpoints') = 'true' then 'ok' else 'alarm'
end as status,
split_part(address, '.', 2) || case
when (attributes_std -> 'node_config') is null then ' ''node_config'' is not defined'
when (attributes_std -> 'node_config' -> 'metadata') is null then ' ''node_config.metadata'' is not defined'
when coalesce(trim((attributes_std -> 'node_config' -> 'metadata' ->> 'disable-legacy-endpoints')), '') = ''
then ' ''node_config.metadata.disable-legacy-endpoints'' is not defined'
when (attributes_std -> 'node_config' -> 'metadata' ->> 'disable-legacy-endpoints') = 'true' then ' legacy endpoints disabled'
else ' legacy endpoints enabled'
end || '.' reason
, path || ':' || start_line
from
terraform_resource
where
type = 'google_container_cluster';

Tags