Baca dalam bahasa Inggris

Bagikan melalui


Memperbarui atau memutar kredensial untuk kluster Azure Kubernetes Service (AKS)

Kluster AKS yang dibuat dengan perwakilan layanan memiliki masa berlaku satu tahun. Saat Anda mendekati tanggal kedaluwarsa, Anda dapat mereset mandat untuk memperpanjang perwakilan layanan untuk jangka waktu tambahan. Anda mungkin juga ingin memperbarui, atau memutar, kredensial sebagai bagian dari kebijakan keamanan yang ditentukan. Kluster AKS yang terintegrasi dengan MICROSOFT Entra ID sebagai penyedia autentikasi memiliki dua identitas lagi: Aplikasi Microsoft Entra Server dan Aplikasi Klien Microsoft Entra. Artikel ini menjelaskan cara memperbarui perwakilan layanan dan kredensial Microsoft Entra untuk kluster AKS.

Catatan

Atau, alih-alih menggunakan perwakilan layanan, Anda dapat menggunakan identitas terkelola untuk izin. Identitas terkelola tidak memerlukan pembaruan atau rotasi. Untuk informasi selengkapnya, lihat Menggunakan identitas terkelola.

Sebelum Anda mulai

Anda memerlukan Azure CLI versi 2.0.65 atau yang lebih baru yang sudah terpasang dan terkonfigurasi. Jalankan az --version untuk menemukan versinya. Jika Anda perlu memasang atau meningkatkan, lihat Memasang Azure CLI.

Memperbarui atau membuat perwakilan layanan baru untuk kluster AKS Anda

Saat Anda ingin memperbarui mandat untuk kluster AKS, Anda dapat memilih untuk:

  • Perbarui mandat untuk perwakilan layanan yang ada.
  • Buat perwakilan layanan baru dan perbarui kluster untuk menggunakan mandat baru ini.

Peringatan

Jika Anda memilih untuk membuat perwakilan layanan baru, tunggu sekitar 30 menit agar izin perwakilan layanan menyebar ke semua wilayah. Memperbarui kluster AKS besar untuk menggunakan kredensial ini dapat memakan waktu lama untuk diselesaikan.

Periksa tanggal kedaluwarsa perwakilan layanan Anda

Untuk memeriksa tanggal kedaluwarsa perwakilan layanan Anda, gunakan az ad app credential list perintah . Contoh berikut mendapatkan ID perwakilan layanan untuk $CLUSTER_NAME kluster dalam $RESOURCE_GROUP_NAME grup sumber daya menggunakan az aks show perintah . ID perwakilan layanan diatur sebagai variabel bernama SP_ID.

SP_ID=$(az aks show --resource-group $RESOURCE_GROUP_NAME --name $CLUSTER_NAME \
    --query servicePrincipalProfile.clientId -o tsv)
az ad app credential list --id "$SP_ID" --query "[].endDateTime" -o tsv

Mengatur ulang kredensial perwakilan layanan yang ada

Untuk memperbarui kredensial untuk perwakilan layanan yang ada, dapatkan ID perwakilan layanan kluster Anda menggunakan az aks show perintah . Contoh berikut mendapatkan ID untuk $CLUSTER_NAME kluster dalam $RESOURCE_GROUP_NAME grup sumber daya. Variabel bernama SP_ID menyimpan ID perwakilan layanan yang digunakan pada langkah berikutnya. Perintah ini menggunakan bahasa perintah Bash.

Peringatan

Saat Anda mereset mandat kluster pada kluster AKS yang menggunakan Azure Virtual Machine Scale Sets, peningkatan gambar simpul dilakukan untuk memperbarui simpul Anda dengan informasi mandat baru.

SP_ID=$(az aks show --resource-group $RESOURCE_GROUP_NAME --name $CLUSTER_NAME \
    --query servicePrincipalProfile.clientId -o tsv)

Gunakan variabel SP_ID yang berisi ID perwakilan layanan untuk mengatur ulang kredensial menggunakan az ad app credential reset perintah . Contoh berikut memungkinkan platform Azure menghasilkan rahasia aman baru untuk perwakilan layanan dan menyimpannya sebagai variabel bernama SP_SECRET.

SP_SECRET=$(az ad app credential reset --id "$SP_ID" --query password -o tsv)

Selanjutnya, Anda memperbarui kluster AKS dengan kredensial perwakilan layanan. Langkah ini diperlukan untuk memperbarui perwakilan layanan pada kluster AKS Anda.

Buat prinsipal layanan baru

Catatan

Jika Anda memperbarui kredensial perwakilan layanan yang ada di bagian sebelumnya, lewati bagian ini dan perbarui kluster AKS dengan kredensial perwakilan layanan.

Untuk membuat perwakilan layanan dan memperbarui kluster AKS untuk menggunakan kredensial baru, gunakan az ad sp create-for-rbac perintah .

az ad sp create-for-rbac --role Contributor --scopes /subscriptions/$SUBSCRIPTION_ID

Outputnya mirip dengan contoh output berikut. Catat sendiri appId dan password gunakan di langkah berikutnya.

{
  "appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}

Tentukan variabel untuk ID perwakilan layanan dan rahasia klien menggunakan output Anda agar tidak menjalankan az ad sp create-for-rbac perintah. SP_ID adalah appId, dan SP_SECRET adalah kata sandi Anda.

SP_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
SP_SECRET=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Selanjutnya, Anda memperbarui kluster AKS dengan kredensial perwakilan layanan baru. Langkah ini diperlukan untuk memperbarui kluster AKS dengan kredensial perwakilan layanan baru.

Memperbarui kluster AKS dengan kredensial perwakilan layanan

Penting

Untuk kluster besar, memperbarui kluster AKS Anda dengan perwakilan layanan baru dapat memakan waktu lama untuk diselesaikan. Pertimbangkan untuk meninjau dan menyesuaikan pengaturan peningkatan lonjakan simpul untuk meminimalkan gangguan selama pembaruan. Untuk kluster kecil dan menengah, dibutuhkan beberapa menit agar kredensial baru diperbarui di kluster.

Perbarui kluster AKS dengan kredensial baru atau yang sudah ada dengan menjalankan az aks update-credentials perintah .

az aks update-credentials \
    --resource-group $RESOURCE_GROUP_NAME \
    --name $CLUSTER_NAME \
    --reset-service-principal \
    --service-principal "$SP_ID" \
    --client-secret "${SP_SECRET}"

Memperbarui kluster AKS dengan kredensial aplikasi Microsoft Entra baru

Anda dapat membuat aplikasi server dan klien Microsoft Entra baru dengan mengikuti langkah-langkah integrasi Microsoft Entra, atau mengatur ulang aplikasi Microsoft Entra yang ada dengan mengikuti metode yang sama seperti untuk reset perwakilan layanan. Setelah itu, Anda perlu memperbarui kredensial aplikasi Microsoft Entra kluster menggunakan az aks update-credentials perintah dengan variabel --reset-aad .

az aks update-credentials \
    --resource-group $RESOURCE_GROUP_NAME \
    --name $CLUSTER_NAME \
    --reset-aad \
    --aad-server-app-id $SERVER_APPLICATION_ID \
    --aad-server-app-secret $SERVER_APPLICATION_SECRET \
    --aad-client-app-id $CLIENT_APPLICATION_ID

Langkah berikutnya

Dalam artikel ini, Anda mempelajari cara memperbarui atau memutar perwakilan layanan dan kredensial aplikasi Microsoft Entra. Untuk informasi selengkapnya tentang cara menggunakan identitas pengelolaan untuk beban kerja dalam kluster AKS, lihat Praktik terbaik untuk autentikasi dan otorisasi di AKS.