This product is not supported for your selected
Datadog site. (
).
이 페이지는 아직 영어로 제공되지 않습니다. 번역 작업 중입니다.
현재 번역 프로젝트에 대한 질문이나 피드백이 있으신 경우
언제든지 연락주시기 바랍니다.Id: 6ccb85d7-0420-4907-9380-50313f80946b
Cloud Provider: gcp
Framework: Terraform
Severity: Medium
Category: Insecure Configurations
Learn More
Description
Kubernetes clusters should be created with private clusters enabled by configuring the private_cluster_config
block and setting both enable_private_nodes
and enable_private_endpoint
to true
. Failing to do so allows access to the cluster’s control plane and nodes from public networks, increasing exposure to potential attacks and unauthorized access. A secure configuration in Terraform looks like:
resource "google_container_cluster" "secure" {
name = "example"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
enable_private_endpoint = true
enable_private_nodes = true
}
}
Compliant Code Examples
resource "google_container_cluster" "negative1" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
enable_private_endpoint = true
enable_private_nodes = true
}
timeouts {
create = "30m"
update = "40m"
}
}
Non-Compliant Code Examples
resource "google_container_cluster" "positive1" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
timeouts {
create = "30m"
update = "40m"
}
}
resource "google_container_cluster" "positive2" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
enable_private_endpoint = true
}
timeouts {
create = "30m"
update = "40m"
}
}
resource "google_container_cluster" "positive3" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
enable_private_nodes = true
}
timeouts {
create = "30m"
update = "40m"
}
}
resource "google_container_cluster" "positive4" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
}
timeouts {
create = "30m"
update = "40m"
}
}
resource "google_container_cluster" "positive5" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
enable_private_endpoint = false
enable_private_nodes = true
}
timeouts {
create = "30m"
update = "40m"
}
}
resource "google_container_cluster" "positive6" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
enable_private_endpoint = true
enable_private_nodes = false
}
timeouts {
create = "30m"
update = "40m"
}
}
resource "google_container_cluster" "positive7" {
name = "marcellus-wallace"
location = "us-central1-a"
initial_node_count = 3
private_cluster_config {
enable_private_endpoint = false
enable_private_nodes = false
}
timeouts {
create = "30m"
update = "40m"
}
}