주요 콘텐츠로 건너뛰기

4단계 - AKS 클러스터가 Key Vault에 액세스할 수 있도록 설정

인증에는 두 가지 방법이 있습니다. 본인에게 해당하는 방법을 선택하세요:


4A - Managed identity

AKS 클러스터가 managed identities로 생성되지 않은 경우, 다음을 통해 추가할 수 있습니다:

az aks update -g "${rgp}" -n "${aksname}" --enable-managed-identity

Key Vault secrets를 Kubernetes secrets와 동기화하려면 AKS kubelet identity에 Key Vault에 대한 getlist 액세스 권한이 필요합니다.

  • 먼저 kubelet identity의 object ID를 가져옵니다:
az aks show -g "${rgp}" -n "${aksname}"

그러면 큰 JSON 응답이 반환됩니다. 다음을 찾을 때까지 스크롤하세요:

identityProfile → kubeletidentity → objectId

  • 이제 Key Vault에 액세스 권한을 설정합니다:
az keyvault set-policy --name "${kvname}" --object-id "${objectid}" --secret-permissions get list

4B - Service principal

service principal을 사용하는 경우 다음이 필요합니다:

  • objectId
  • appId
  • tenantId
  • clientSecret

이 항목들은 모두 Azure Active Directory에서 찾을 수 있습니다.

az keyvault set-policy --name "${kvname}" --object-id "${objectid}" --secret-permissions get list
  • Kubernetes secret을 생성합니다:
kubectl create secret generic keyvault-service-principal \
--from-literal=ClientID="${appid}" \
--from-literal=ClientSecret="${clientsecret}"