Azure-beli felügyelt identitáshitelesítés engedélyezése Kubernetes-fürtökhöz kubeloginnal

Az AKS által felügyelt Microsoft Entra-integráció leegyszerűsíti a Microsoft Entra integrációs folyamatát. Korábban ügyfél- és kiszolgálóalkalmazást kellett létrehoznia, és a Microsoft Entra-bérlőnek címtárolvasói szerepkör-engedélyeket kellett hozzárendelnie. Most az AKS-erőforrás-szolgáltató kezeli az ügyfél- és kiszolgálóalkalmazásokat.

A fürtgazdák a Kubernetes szerepköralapú hozzáférés-vezérlését (Kubernetes RBAC) konfigurálhatják a felhasználó identitása vagy címtárcsoport-tagsága alapján. A Microsoft Entra-hitelesítés az OpenID-Csatlakozás rendelkező AKS-fürtök számára biztosított. Az OpenID Csatlakozás az OAuth 2.0 protokollra épülő identitásréteg. Az OpenID Csatlakozás az OpenID Csatlakozás dokumentációjában talál további információt.

További információ a Microsoft Entra integrációs folyamatáról a Microsoft Entra dokumentációjában.

Ez a cikk részletesen ismerteti, hogyan engedélyezheti és használhatja az Azure-erőforrások felügyelt identitásait az AKS-fürttel.

Korlátozások

Az alábbiakban az Azure-beli felügyelt identitáshitelesítésT integráló korlátozások szerepelnek az AKS-en.

  • Az integráció a hozzáadás után nem tiltható le.
  • Az integrált fürtökről az örökölt Microsoft Entra ID-fürtökre való visszalépések nem támogatottak.
  • A Kubernetes RBAC-támogatással nem rendelkező fürtök nem tudják hozzáadni az integrációt.

Mielőtt elkezdené

A felügyelt identitás AKS-bővítményének megfelelő telepítéséhez a következő követelményeknek kell megfelelnie.

  • Az Azure CLI 2.29.0-s vagy újabb verziója telepítve és konfigurálva van. A verzió azonosításához futtassa a következőt: az --version. Ha telepíteni vagy frissíteni szeretne: Az Azure CLI telepítése.
  • kubectl Legalább 1.18.1-es vagy kubelogin. Az Azure CLI-vel és az Azure PowerShell-modullal ez a két parancs megtalálható és automatikusan kezelhető. Ez azt jelenti, hogy alapértelmezés szerint frissítve vannak, és a futtatásuk az aks install-cli nem kötelező vagy ajánlott. Ha automatizált folyamatot használ, a megfelelő vagy legújabb verzió frissítéseit kell kezelnie. A Kubernetes kubectl alverziói közötti különbség nem lehet több egynél. Ellenkező esetben a hitelesítési problémák nem a megfelelő verzióban jelentkeznek.
  • Ha helmt használ, a Helm 3.3 minimális verziójára van szüksége.
  • Ehhez a konfigurációhoz Microsoft Entra-csoport szükséges a fürthöz. Ez a csoport rendszergazdai csoportként van regisztrálva a fürtben a rendszergazdai engedélyek megadásához. Ha nem rendelkezik meglévő Microsoft Entra-csoporttal, létrehozhat egyet a az ad group create paranccsal.

Feljegyzés

A Microsoft Entra integrált fürtök az 1.24-es verziónál újabb Kubernetes-verzióval automatikusan használják a kubelogin formátumot. A Kubernetes 1.24-es verziójától kezdve a Microsoft Entra ID-fürtök clusterUser hitelesítő adatainak alapértelmezett formátuma a execkubelogin bináris fájl a végrehajtási ÚTVONALban. A nem Microsoft Entra-fürtök vagy az 1.24-nél régebbi verziót futtató Microsoft Entra ID-fürtök viselkedése nem változik. A meglévő letöltött fájlok kubeconfig továbbra is működnek. A clusterUser hitelesítő adatainak lekérésekor opcionális lekérdezési paraméterformátum is szerepel, amely felülírja az alapértelmezett viselkedésváltozást. Ha a régi kubeconfig formátumot szeretné fenntartani, explicit módon megadhatja a formátumot az Azure-nak.

Az integráció engedélyezése az AKS-fürtön

Új fürt létrehozása

  1. Hozzon létre egy Azure-erőforráscsoportot a az group create paranccsal.

    az group create --name myResourceGroup --location centralus
    
  2. Hozzon létre egy AKS-fürtöt, és engedélyezze az adminisztrációs hozzáférést a Microsoft Entra-csoport számára a az aks create parancs használatával.

    az aks create -g myResourceGroup -n myManagedCluster --enable-aad --aad-admin-group-object-ids <id> [--aad-tenant-id <id>]
    

    Az AKS által felügyelt Microsoft Entra ID-fürt sikeres létrehozása a válasz törzsének következő szakaszával rendelkezik:

    "AADProfile": {
        "adminGroupObjectIds": [
        "5d24****-****-****-****-****afa27aed"
        ],
        "clientAppId": null,
        "managed": true,
        "serverAppId": null,
        "serverAppSecret": null,
        "tenantId": "72f9****-****-****-****-****d011db47"
    }
    

Meglévő fürt használata

Engedélyezze az AKS által felügyelt Microsoft Entra-integrációt a meglévő Kubernetes RBAC-kompatibilis fürtön a az aks update paranccsal. Győződjön meg arról, hogy a felügyeleti csoport úgy van beállítva, hogy a fürthöz való hozzáférést megtartsa.

az aks update -g MyResourceGroup -n myManagedCluster --enable-aad --aad-admin-group-object-ids <id-1>,<id-2> [--aad-tenant-id <id>]

Az AKS által felügyelt Microsoft Entra ID-fürtök sikeres aktiválása a válasz törzsének következő szakaszával rendelkezik:

"AADProfile": {
    "adminGroupObjectIds": [
        "5d24****-****-****-****-****afa27aed"
    ],
    "clientAppId": null,
    "managed": true,
    "serverAppId": null,
    "serverAppSecret": null,
    "tenantId": "72f9****-****-****-****-****d011db47"
    }

Örökölt fürt migrálása az integrációba

Ha a fürt régi Microsoft Entra-integrációt használ, a parancson keresztül az aks update frissíthet az AKS által felügyelt Microsoft Entra-integrációra.

Figyelmeztetés

Az ingyenes rétegbeli fürtök a frissítés során api-kiszolgáló leállást tapasztalhatnak. Javasoljuk, hogy a nem üzemidő alatt frissítsen. A frissítés után a kubeconfig tartalma megváltozik. Az új hitelesítő adatok kubeconfig fájlba való egyesítéséhez futtatnia az aks get-credentials --resource-group <AKS resource group name> --name <AKS cluster name> kell.

az aks update -g myResourceGroup -n myManagedCluster --enable-aad --aad-admin-group-object-ids <id> [--aad-tenant-id <id>]

Az AKS által felügyelt Microsoft Entra ID-fürtök sikeres migrálása a válasz törzsének következő szakaszával rendelkezik:

"AADProfile": {
    "adminGroupObjectIds": [
        "5d24****-****-****-****-****afa27aed"
    ],
    "clientAppId": null,
    "managed": true,
    "serverAppId": null,
    "serverAppSecret": null,
    "tenantId": "72f9****-****-****-****-****d011db47"
    }

Az engedélyezett fürt elérése

  1. Kérje le a felhasználói hitelesítő adatokat a fürt eléréséhez a az aks get-credentials parancs használatával.

    az aks get-credentials --resource-group myResourceGroup --name myManagedCluster
    
  2. A bejelentkezéshez kövesse az utasításokat.

  3. Állítsa be kubelogin az Azure CLI használatára.

    kubelogin convert-kubeconfig -l azurecli
    
  4. Tekintse meg a fürt csomópontjait a kubectl get nodes paranccsal.

    kubectl get nodes
    

Nem interaktív bejelentkezés kubeloginnal

Vannak olyan nem interaktív forgatókönyvek, amelyek nem támogatják kubectl. Ezekben az esetekben kubelogin a fürthöz való csatlakozáshoz használjon nem interaktív szolgáltatásnév hitelesítő adatokat a folyamatos integrációs folyamatok végrehajtásához.

Feljegyzés

A Microsoft Entra integrált fürtök az 1.24-es verziónál újabb Kubernetes-verzióval automatikusan használják a kubelogin formátumot. A Kubernetes 1.24-es verziójától kezdve a Microsoft Entra ID-fürtök clusterUser hitelesítő adatainak alapértelmezett formátuma a execkubelogin bináris fájl a végrehajtási ÚTVONALban. A nem Microsoft Entra-fürtök vagy az 1.24-nél régebbi verziót futtató Microsoft Entra ID-fürtök viselkedése nem változik. A meglévő letöltött fájlok kubeconfig továbbra is működnek. A clusterUser hitelesítő adatainak lekérésekor opcionális lekérdezési paraméterformátum is szerepel, amely felülírja az alapértelmezett viselkedésváltozást. Ha a régi kubeconfig formátumot szeretné fenntartani, explicit módon megadhatja a formátumot az Azure-nak.

  • A clusterUser hitelesítő adatainak lekérésekor a format lekérdezési paraméterrel felülírhatja az alapértelmezett viselkedést. Az értéket beállíthatja úgy, hogy azure az eredeti kubeconfig formátumot használja:

    az aks get-credentials --format azure
    
  • Ha a Microsoft Entra integrált fürtje a Kubernetes 1.24-es vagy újabb verzióját használja, manuálisan kell átalakítania a kubeconfig formátumot.

    export KUBECONFIG=/path/to/kubeconfig
    kubelogin convert-kubeconfig
    

Feljegyzés

Ha a következő hibaüzenet jelenik meg: Az Azure auth beépülő modul el lett távolítva. A kubeconfig formátum manuális konvertálásához futtassa a parancsot kubelogin convert-kubeconfig .

További információkért tekintse meg az Azure Kubelogin ismert problémáit.

Hozzáférési problémák elhárítása

Fontos

Az ebben a szakaszban ismertetett lépés alternatív hitelesítési módszert javasol a Normál Microsoft Entra-csoporthitelesítéshez képest. Ezt a lehetőséget csak vészhelyzetben használhatja.

Ha nincs rendszergazdai hozzáférése egy érvényes Microsoft Entra-csoporthoz, kövesse ezt a kerülő megoldást. Jelentkezzen be egy olyan fiókkal, amely tagja az Azure Kubernetes szolgáltatásfürtnek Rendszergazda szerepkörnek, és adjon meg a csoportnak vagy a bérlőnek rendszergazdai hitelesítő adatokat a fürt eléréséhez.

Következő lépések

  • További információ a Microsoft Entra Kubernetes RBAC-vel való integrációjáról.
  • További információ az AKS és a Kubernetes identitásfogalmairól.
  • Megtudhatja, hogyan használhatja a kubelogint az AKS összes támogatott Microsoft Entra hitelesítési módszeréhez.
  • Azure Resource Manager-sablonokkal (ARM) hozhat létre AKS által felügyelt Microsoft Entra ID-kompatibilis fürtöket.