AKS の Kubernetes RBAC が無効

AKS で Kubernetes RBAC を使用し、ユーザーとサービスアカウントの権限を制限します。

説明

AKS の Kubernetes RBAC は、ロールとロールバインディングでユーザーやサービスアカウントの操作を制限します。enable_rbac が無効な構成では、このアクセス制御を利用できません。

想定される影響

クラスターにアクセスできる主体の操作を細かく制限しにくくなり、ワークロードやシークレットへの不要なアクセスが生じるおそれがあります。

対処方法

クラスターの作成時に enable_rbac を有効にし、最小限の権限を持つロールとバインディングを設定してください。既存のクラスターで変更できるかを確認し、直接の切り替えが未対応ならワークロードの移行を計画してください。

例

この例は RBAC の設定だけを比較しています。リージョンでサポートされる kubernetes_version を指定し、ノードプールと ID は別途設定してください。Kubernetes RBAC と Azure RBAC による認可は別の設定です。

変更前

yaml
- name: AKS 생성
  azure.azcollection.azure_rm_aks:
    name: myAKS
    resource_group: myResourceGroup
    location: eastus
    dns_prefix: akstest
    kubernetes_version: "{{ kubernetes_version }}"
    enable_rbac: no

変更後

yaml
- name: AKS 생성
  azure.azcollection.azure_rm_aks:
    name: myAKS
    resource_group: myResourceGroup
    location: eastus
    dns_prefix: akstest
    kubernetes_version: "{{ kubernetes_version }}"
    enable_rbac: yes

参考資料