Hakbang 4 - Paganahin ang iyong AKS cluster na ma-access ang Key Vault
May dalawang paraan para sa authentication; piliin ang naaangkop sa iyo:
- 4A - Managed identity (inirerekomenda)
- 4B - Service principal
- Gamitin lamang ang paraang ito kung ang managed identities ay hindi available o hindi nais sa iyong cluster.
4A - Managed identity
Kung ang iyong AKS cluster ay hindi ginawa gamit ang managed identities, maaari itong idagdag sa pamamagitan ng:
az aks update -g "${rgp}" -n "${aksname}" --enable-managed-identity
Para i-sync ang Key Vault secrets sa Kubernetes secrets, kailangan ng AKS kubelet identity ng get at list access sa Key Vault.
- Una, kunin ang object ID ng kubelet identity:
az aks show -g "${rgp}" -n "${aksname}"
Magbabalik ito ng malaking JSON response. Mag-scroll hanggang makita mo ang:
identityProfile → kubeletidentity → objectId

- Ngayon, itakda ang mga pahintulot sa pag-access sa Key Vault:
az keyvault set-policy --name "${kvname}" --object-id "${objectid}" --secret-permissions get list
4B - Service principal
Kung gumagamit ka ng service principal, kakailanganin mo ang:
objectIdappIdtenantIdclientSecret
Makikita ang lahat ng ito sa Azure Active Directory.
az keyvault set-policy --name "${kvname}" --object-id "${objectid}" --secret-permissions get list
- Gawin ang Kubernetes secret:
kubectl create secret generic keyvault-service-principal \
--from-literal=ClientID="${appid}" \
--from-literal=ClientSecret="${clientsecret}"