説明
Kubernetes Dashboard はクラスター情報を表示する管理 UI です。不要なのに有効にしておくと、管理対象のインターフェイスが増えます。有効化だけでインターネット公開を意味するわけではありませんが、認証やアクセス制御が不十分だと、情報や管理機能が意図しない利用者に公開されるおそれがあります。
想定される影響
- 不要な管理インターフェイスは、アクセス制御の設定ミスが生じる余地を増やします。
- 権限が過剰だと、UI を通じた誤った変更の影響も大きくなる場合があります。
対処方法
- 実際に使っている Dashboard と運用上の依存関係を確認し、不要なら削除してください。必要な管理作業は RBAC を適用した承認済みの経路で行ってください。
- 管理 UI が必要な場合は、アクセス経路を制限し、認証と最小権限を適用してください。別途インストールした Dashboard は、その導入方式の設定で管理してください。
例
過去の AKS Dashboard アドオンだけを比較する抜粋です。現在の AKS はこのアドオンをサポートしていないため、新しいクラスター構成に追加しないでください。
変更前
bicep
resource aksCluster 'Microsoft.ContainerService/managedClusters@2020-02-01' = {
name: 'aksCluster'
location: resourceGroup().location
properties: {
addonProfiles: {
kubeDashboard: {
enabled: true
}
}
dnsPrefix: 'team-aks'
}
}
過去のアドオンを有効にします。実際の到達範囲はネットワークと認証の設定によります。
変更後
bicep
resource aksCluster 'Microsoft.ContainerService/managedClusters@2020-02-01' = {
name: 'aksCluster'
location: resourceGroup().location
properties: {
addonProfiles: {
kubeDashboard: {
enabled: false
}
}
dnsPrefix: 'team-aks'
}
}
過去のアドオンを無効にします。別途インストールした管理 UI まで削除する設定ではありません。