Langkah 4 - Aktifkan cluster AKS Anda untuk mengakses Key Vault
Ada dua metode untuk autentikasi; pilih yang sesuai untuk Anda:
- 4A - Managed identity (disarankan)
- 4B - Service principal
- Gunakan metode ini hanya jika managed identities tidak tersedia atau tidak diinginkan di cluster Anda.
4A - Managed identity
Jika cluster AKS Anda tidak dibuat dengan managed identities, ini dapat ditambahkan melalui:
az aks update -g "${rgp}" -n "${aksname}" --enable-managed-identity
Untuk menyinkronkan secret Key Vault ke secret Kubernetes, identitas kubelet AKS memerlukan akses get dan list ke Key Vault.
- Pertama, ambil object ID dari identitas kubelet:
az aks show -g "${rgp}" -n "${aksname}"
Ini akan mengembalikan respons JSON yang besar. Gulir hingga Anda menemukan:
identityProfile → kubeletidentity → objectId

- Sekarang atur izin akses pada Key Vault:
az keyvault set-policy --name "${kvname}" --object-id "${objectid}" --secret-permissions get list
4B - Service principal
Jika Anda menggunakan service principal, Anda akan memerlukan:
objectIdappIdtenantIdclientSecret
Semua ini dapat ditemukan di Azure Active Directory.
az keyvault set-policy --name "${kvname}" --object-id "${objectid}" --secret-permissions get list
- Buat secret Kubernetes:
kubectl create secret generic keyvault-service-principal \
--from-literal=ClientID="${appid}" \
--from-literal=ClientSecret="${clientsecret}"