Bagikan melalui


Mengelola akun lokal dengan integrasi Microsoft Entra yang dikelola AKS

Saat Anda menyebarkan kluster AKS, akun lokal diaktifkan secara default. Bahkan ketika Anda mengaktifkan integrasi RBAC atau Microsoft Entra, --admin akses masih ada sebagai opsi backdoor yang tidak dapat diaudit. Artikel ini menunjukkan kepada Anda cara menonaktifkan akun lokal pada kluster yang ada, membuat kluster baru dengan akun lokal dinonaktifkan, dan mengaktifkan kembali akun lokal pada kluster yang ada.

Sebelum Anda mulai

  • Lihat Integrasi Microsoft Entra yang dikelola AKS untuk ringkasan dan instruksi penyiapan.

Menonaktifkan akun lokal

Anda dapat menonaktifkan akun lokal menggunakan parameter disable-local-accounts. Bidang properties.disableLocalAccounts telah ditambahkan ke API kluster terkelola untuk menunjukkan apakah fitur diaktifkan atau tidak pada kluster.

Catatan

  • Pada kluster dengan integrasi Microsoft Entra diaktifkan, pengguna yang ditetapkan ke grup administrator Microsoft Entra yang ditentukan oleh aad-admin-group-object-ids masih dapat memperoleh akses menggunakan kredensial non-administrator. Pada kluster tanpa integrasi Microsoft Entra diaktifkan dan properties.disableLocalAccounts diatur ke true, setiap upaya untuk mengautentikasi dengan kredensial pengguna atau admin akan gagal.

  • Setelah menonaktifkan akun pengguna lokal pada kluster AKS yang ada di mana pengguna mungkin telah mengautentikasi dengan akun lokal, administrator harus memutar sertifikat kluster untuk mencabut sertifikat yang mungkin dapat mereka akses. Jika ini adalah kluster baru, tidak ada tindakan yang diperlukan.

Membuat kluster baru tanpa akun lokal

  1. Buat kluster AKS baru tanpa akun lokal menggunakan az aks create perintah dengan disable-local-accounts bendera .

    az aks create \
        --resource-group <resource-group> \
        --name <cluster-name> \
        --enable-aad \
        --aad-admin-group-object-ids <aad-group-id> \
        --disable-local-accounts \
        --generate-ssh-keys
    
  2. Dalam output, konfirmasikan akun lokal dinonaktifkan dengan memeriksa apakah bidang properties.disableLocalAccounts diatur ke true.

    "properties": {
        ...
        "disableLocalAccounts": true,
        ...
    }
    
  3. Jalankan az aks get-credentials perintah untuk memastikan kluster diatur untuk menonaktifkan akun lokal.

    az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
    

    Output Anda akan menampilkan pesan kesalahan berikut yang menunjukkan fitur tersebut mencegah akses:

    Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
    

Menonaktifkan akun lokal pada kluster yang ada

  1. Nonaktifkan akun lokal pada kluster AKS yang diaktifkan integrasi Microsoft Entra yang ada menggunakan az aks update perintah dengan disable-local-accounts parameter .

    az aks update --resource-group <resource-group> --name <cluster-name> --disable-local-accounts
    
  2. Dalam output, konfirmasikan akun lokal dinonaktifkan dengan memeriksa apakah bidang properties.disableLocalAccounts diatur ke true.

    "properties": {
        ...
        "disableLocalAccounts": true,
        ...
    }
    
  3. Jalankan az aks get-credentials perintah untuk memastikan kluster diatur untuk menonaktifkan akun lokal.

    az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
    

    Output Anda akan menampilkan pesan kesalahan berikut yang menunjukkan fitur tersebut mencegah akses:

    Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
    

Menonaktifkan ulang akun lokal pada kluster yang ada

  1. Aktifkan kembali akun lokal yang dinonaktifkan pada kluster yang ada menggunakan az aks update perintah dengan enable-local-accounts parameter .

    az aks update --resource-group <resource-group> --name <cluster-name> --enable-local-accounts
    
  2. Dalam output, konfirmasikan akun lokal diaktifkan kembali dengan memeriksa apakah bidang properties.disableLocalAccounts diatur ke false.

    "properties": {
        ...
        "disableLocalAccounts": false,
        ...
    }
    
  3. Jalankan az aks get-credentials perintah untuk memastikan kluster diatur untuk mengaktifkan akun lokal.

    az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
    

    Output Anda akan menampilkan pesan berikut yang menunjukkan bahwa Anda telah berhasil mengaktifkan akun lokal pada kluster:

    Merged "<cluster-name>-admin" as current context in C:\Users\<username>\.kube\config
    

Langkah berikutnya