Udostępnij przez


Omówienie tożsamości zarządzanych w usłudze Azure Kubernetes Service (AKS)

Ten artykuł zawiera omówienie tożsamości zarządzanych przypisanych przez system i przypisanych przez użytkownika w usłudze AKS, w tym sposobu ich działania, przypisań ról i funkcji tożsamości zarządzanej specyficznej dla usługi AKS.

Aby włączyć tożsamość zarządzaną w nowym lub istniejącym klastrze usługi AKS, zobacz Używanie tożsamości zarządzanej w usłudze Azure Kubernetes Service (AKS). Aby uzyskać więcej informacji na temat tożsamości zarządzanych na platformie Azure, zobacz dokumentację Tożsamości zarządzane dla zasobów platformy Azure.

Uwaga / Notatka

Typy tożsamości przypisane przez system i przypisane przez użytkownika różnią się od tożsamości obciążenia, która jest przeznaczona do użycia przez aplikację działającą na zasobniku.

Przepływ autoryzacji tożsamości zarządzanej usługi AKS

Klastry usługi AKS używają tożsamości zarządzanych przypisanych przez system lub użytkowników do żądania tokenów z firmy Microsoft Entra. Te tokeny pomagają autoryzować dostęp do innych zasobów działających na platformie Azure. Do tożsamości zarządzanej przypisujesz rolę kontroli dostępu opartej na rolach (RBAC) platformy Azure, aby przyznać jej uprawnienia do określonego zasobu platformy Azure. Na przykład można udzielić uprawnień tożsamości zarządzanej w celu uzyskania dostępu do wpisów tajnych w magazynie kluczy platformy Azure do użycia przez klaster.

Zachowanie tożsamości zarządzanej w Azure Kubernetes Service (AKS)

Podczas wdrażania klastra usługi AKS domyślnie tworzona jest tożsamość zarządzana przypisana przez system. Klaster można również utworzyć przy użyciu tożsamości zarządzanej przypisanej przez użytkownika lub zaktualizować istniejący klaster do innego typu tożsamości zarządzanej.

Jeśli klaster już używa tożsamości zarządzanej i zmienia typ tożsamości (na przykład z przypisanego przez system do przypisanego przez użytkownika), występuje opóźnienie, gdy składniki płaszczyzny sterowania przełączają się na nową tożsamość. Składniki płaszczyzny sterowania nadal używają starej tożsamości do momentu wygaśnięcia tokenu. Po odświeżeniu tokenu przełączą się do nowej tożsamości. Ten proces może zająć kilka godzin.

Uwaga / Notatka

Istnieje również możliwość utworzenia klastra z główną usługą aplikacji, zamiast z tożsamością zarządzaną. Zalecamy jednak używanie tożsamości zarządzanej za pośrednictwem jednostki usługi aplikacji w celu zapewnienia bezpieczeństwa i łatwości użycia. Jeśli masz istniejący klaster, który używa głównej jednostki usługi aplikacji, możesz zaktualizować go, aby używał tożsamości zarządzanej.

Zarządzanie tożsamościami i poświadczeniami w usłudze AKS

Platforma Azure zarządza zarówno tożsamościami zarządzanymi przypisanymi przez system, jak i przypisanymi przez użytkownika oraz ich poświadczeniami, co pozwala na autoryzację dostępu z aplikacji bez konieczności tworzenia ani rotacji tajemnic.

Zarządzana tożsamość przypisana przez system

Poniższa tabela zawiera podsumowanie kluczowych cech tożsamości zarządzanej przypisanej przez system w usłudze AKS:

Creation Lifecycle Udostępnianie między zasobami Typowe przypadki użycia
Utworzone w ramach zasobu platformy Azure, takiego jak klaster usługi AKS Powiązane z cyklem życia zasobu nadrzędnego, więc jest usuwane po usunięciu zasobu nadrzędnego Można skojarzyć tylko z jednym zasobem • Obciążenia zawarte w jednym zasobie platformy Azure
• Obciążenia wymagające tożsamości niezależnych

Tożsamość zarządzana przypisana użytkownikowi

W poniższej tabeli przedstawiono podsumowanie kluczowych cech tożsamości zarządzanej przypisanej przez użytkownika w usłudze AKS:

Creation Lifecycle Udostępnianie między zasobami Typowe przypadki użycia
Utworzony jako autonomiczny zasób platformy Azure i musi istnieć przed utworzeniem klastra Niezależny od cyklu życia dowolnego określonego zasobu, dlatego wymaga ręcznego usunięcia, jeśli nie jest już potrzebny Może być współużytkowany w wielu zasobach • Obciążenia uruchamiane na wielu zasobach, które mogą współdzielić jedną tożsamość
• Obciążenia wymagające autoryzacji wstępnej do bezpiecznego zasobu w ramach procesu dostarczania zasobów
• Obciążenia, w których zasoby są często poddawane recyklingu, ale wymagają spójnych uprawnień

Wstępnie utworzona tożsamość zarządzana kubelet

Wstępnie utworzona tożsamość zarządzana kubelet to opcjonalna tożsamość przypisana przez użytkownika, której usługa kubelet może używać do uzyskiwania dostępu do innych zasobów na platformie Azure. Ta funkcja umożliwia scenariusze, takie jak połączenie z usługą Azure Container Registry (ACR) podczas tworzenia klastra. Jeśli nie określisz przypisanej przez użytkownika tożsamości zarządzanej dla kubelet, AKS utworzy tożsamość kubelet przypisaną przez użytkownika w grupie zasobów węzła. W przypadku tożsamości kubelet przypisanej przez użytkownika poza domyślną grupą zasobów węzła roboczego należy przypisać rolę Operator tożsamości zarządzanej w tożsamości kubelet dla tożsamości zarządzanej płaszczyzny sterowania.

Przypisania ról dla tożsamości zarządzanych w usłudze AKS

Rolę RBAC w platformie Azure można przypisać tożsamości zarządzanej, aby nadać klastrowi uprawnienia do innego zasobu na platformie Azure. Kontrola dostępu oparta na rolach (RBAC) w Azure obsługuje zarówno wbudowane, jak i niestandardowe definicje ról, które określają poziomy uprawnień. Aby przypisać rolę, zobacz Kroki przypisywania roli platformy Azure.

Po przypisaniu roli RBAC platformy Azure do tożsamości zarządzanej należy zdefiniować zakres roli. Ogólnie rzecz biorąc, najlepszym rozwiązaniem jest ograniczenie zakresu roli do minimalnych uprawnień wymaganych przez tożsamość zarządzaną. Aby uzyskać więcej informacji na temat zakresu ról Azure RBAC, zobacz Zrozumienie zakresu dla Azure RBAC.

Przypisania ról dla tożsamości zarządzanej w płaszczyźnie sterowania

Podczas tworzenia i używania własnej sieci wirtualnej, dołączonych dysków platformy Azure, statycznego adresu IP, tabeli tras lub tożsamości kubelet przypisanej przez użytkownika, gdzie zasoby są poza grupą zasobów węzła roboczego, interfejs wiersza polecenia platformy Azure automatycznie dodaje przypisanie roli. Jeśli używasz szablonu ARM lub innej metody, użyj identyfikatora tożsamości zarządzanej, aby wykonać przypisanie roli.

Jeśli nie używasz Azure CLI, ale korzystasz z własnej sieci wirtualnej, dołączonych dysków Azure, statycznego adresu IP, tabeli tras lub tożsamości kubeleta przypisanej przez użytkownika, która znajduje się poza grupą zasobów węzła roboczego, zalecamy użycie tożsamości zarządzanej przypisanej przez użytkownika dla płaszczyzny sterowania.

Gdy płaszczyzna sterowania używa tożsamości zarządzanej przypisanej przez system, tożsamość jest tworzona w tym samym czasie co klaster, więc nie można wykonać przypisania roli dopiero po utworzeniu klastra.

Podsumowanie tożsamości zarządzanych używanych przez AKS

Usługa AKS używa kilku tożsamości zarządzanych dla wbudowanych usług i dodatków. W poniższej tabeli przedstawiono podsumowanie tożsamości zarządzanych używanych przez usługę AKS, ich przypadków użycia, uprawnień domyślnych oraz tego, czy można wprowadzić własną tożsamość:

Tożsamość Name Przypadek użycia Uprawnienia domyślne Przynieś własną tożsamość
Płaszczyzna sterowania Nazwa klastra usługi AKS Używane przez składniki płaszczyzny sterowania usługi AKS do zarządzania zasobami klastra, w tym równoważnikami obciążenia dla ruchu przychodzącego i publicznymi adresami IP zarządzanymi przez usługę AKS, Automatycznego Skalowania Klastra, sterownikami dysku, pliku i obiektów blob platformy Azure CSI. Rola kontrybutora dla grupy zasobów Node Wsparte
Kubelet Nazwa klastra AKS-agentpool Uwierzytelnianie za pomocą usługi Azure Container Registry (ACR) N/A dla platformy Kubernetes w wersji 1.15 lub nowszej Wsparte
Dodatek AzureNPM Nie jest wymagana żadna tożsamość N/A Nieobsługiwane
Dodatek Monitorowanie sieci w usłudze AzureCNI Nie jest wymagana żadna tożsamość N/A Nieobsługiwane
Dodatek azure-policy (gatekeeper) Nie jest wymagana żadna tożsamość N/A Nieobsługiwane
Dodatek Kaliko Nie jest wymagana żadna tożsamość N/A Nieobsługiwane
Dodatek routing aplikacji Zarządza certyfikatami usług Azure DNS i Azure Key Vault Rola użytkownika wpisów tajnych usługi Key Vault dla usługi Key Vault, rola Współautor strefy DNS dla stref DNS, rola Współautor prywatnej strefy DNS dla prywatnych stref DNS Nieobsługiwane
Dodatek HTTPApplicationRouting Zarządza wymaganymi zasobami sieciowymi Rola czytelnika dla grupy zasobów węzła, rola współautora dla strefy DNS Nieobsługiwane
Dodatek Bramka aplikacji Ingress Zarządza wymaganymi zasobami sieciowymi Rola współautora dla grupy zasobów węzła Nieobsługiwane
Dodatek omsagent Służy do wysyłania metryk usługi AKS do usługi Azure Monitor Rola publikującego metryki monitorowania Nieobsługiwane
Dodatek Virtual-Node (ACIConnector) Zarządza wymaganymi zasobami sieciowymi dla usługi Azure Container Instances (ACI) Rola współautora dla grupy zasobów węzła Nieobsługiwane
Dodatek Analiza kosztów Służy do zbierania danych alokacji kosztów N/A Wsparte
Tożsamość obciążenia roboczego Tożsamość obciążeń Microsoft Entra Umożliwia aplikacjom bezpieczny dostęp do zasobów w chmurze za pomocą identyfikatora obciążenia Entra firmy Microsoft N/A Nieobsługiwane

Następny krok: Włączanie tożsamości zarządzanych w usłudze AKS

Aby dowiedzieć się, jak włączyć tożsamości zarządzane w nowym lub istniejącym klastrze usługi AKS, zobacz Używanie tożsamości zarządzanej w usłudze Azure Kubernetes Service (AKS).