説明
Kubernetes Dashboard は強力なクラスター管理機能を提供します。不要な公開が認証情報の窃取や過剰な権限と組み合わさると、リソースの操作を許すおそれがあります。レガシーの addons_config.kubernetes_dashboard は Google Provider 3.0 で削除されたため、現在の構成に追加しないでください。
想定される影響
- 不要な管理 UI は攻撃対象となる範囲を広げる場合があります。
- Dashboard のサービスアカウントや認証経路が侵害されると、付与された権限の範囲でリソースを操作されるおそれがあります。
対処方法
- 不要な Dashboard を無効化または削除してください。レガシーアドオンに対応する環境では、
kubernetes_dashboard.disabled = trueが該当する設定です。 - サポート対象の GKE と Provider に移行し、削除されたフィールドを整理してください。別途導入した管理 UI についても、認証、ネットワークアクセス、最小権限を確認してください。
例
GKE 1.9.7 と過去の Provider を使用した歴史的な例です。現在のデプロイ用構成として使わず、サポート対象のバージョンへ移行してください。
変更前
hcl
resource "google_container_cluster" "legacy" {
name = "legacy-cluster"
location = "asia-northeast3"
min_master_version = "1.9.7"
addons_config {
kubernetes_dashboard {
disabled = false
}
}
}
変更後
hcl
resource "google_container_cluster" "legacy" {
name = "legacy-cluster"
location = "asia-northeast3"
min_master_version = "1.9.7"
addons_config {
kubernetes_dashboard {
disabled = true
}
}
}
補足:
- 変更前: レガシー GKE アドオンで Dashboard を有効にします。
- 変更後: 同じレガシーアドオンで Dashboard を無効にします。GKE バージョンのサポート問題まで解決する変更ではありません。