Udostępnij za pośrednictwem


Używanie tożsamości zarządzanych dla platformy Azure z usługą Service FabricUsing Managed identities for Azure with Service Fabric

Typowym wyzwaniem podczas tworzenia aplikacji w chmurze jest sposób bezpiecznego zarządzania poświadczeniami w kodzie na potrzeby uwierzytelniania w różnych usługach bez zapisywania ich lokalnie na stacji roboczej dewelopera lub kontroli źródła. Tożsamości zarządzane dla Azure rozwiązują ten problem dla wszystkich Twoich zasobów w Microsoft Entra ID, udostępniając im automatycznie zarządzane tożsamości w Microsoft Entra ID. Można użyć tożsamości usługi do uwierzytelniania w dowolnej usłudze obsługującej uwierzytelnianie Microsoft Entra, w tym w Key Vault, bez konieczności przechowywania jakichkolwiek poświadczeń w kodzie.

Tożsamości zarządzane dla zasobów platformy Azure są bezpłatne w ramach Microsoft Entra ID dla subskrypcji platformy Azure. Nie ma dodatkowych kosztów.

Uwaga

Tożsamości zarządzane dla platformy Azure to nowa nazwa usługi znanej wcześniej jako tożsamość usługi zarządzanej (MSI).

Pojęcia

Tożsamości zarządzane dla platformy Azure są oparte na kilku kluczowych pojęciach:

  • Identyfikator klienta — unikatowy identyfikator wygenerowany przez firmę Microsoft Entra ID powiązany z aplikacją i jednostką usługi podczas początkowej aprowizacji (zobacz identyfikator aplikacji (klienta).

  • Identyfikator głównego podmiotu — identyfikator obiektu głównego podmiotu usługi dla tożsamości zarządzanej, która jest używana do udzielania dostępu opartego na rolach do zasobu platformy Azure.

  • Podmiot usługi — obiekt Entra firmy Microsoft, który reprezentuje odzwierciedlenie aplikacji Microsoft Entra w danej dzierżawie (zobacz również podmiot usługi).

Istnieją dwa typy tożsamości zarządzanych:

  • Tożsamość zarządzana przypisana przez system jest włączona bezpośrednio w wystąpieniu usługi Azure. Cykl życia tożsamości przypisanej przez system jest wyjątkowy dla instancji usługi w usłudze Azure, na której jest włączona.
  • Tożsamość zarządzana przypisana przez użytkownika jest tworzona jako autonomiczny zasób platformy Azure. Tożsamość można przypisać do jednej lub więcej instancji usługi platformy Azure i jest zarządzana niezależnie od cyklu życia tych instancji.

Aby dokładniej zrozumieć różnicę między typami tożsamości zarządzanych, zobacz Jak działają tożsamości zarządzane dla zasobów platformy Azure?.

Obsługiwane scenariusze dla aplikacji usługi Service Fabric

Tożsamości zarządzane dla usługi Service Fabric są obsługiwane tylko w klastrach usługi Service Fabric wdrożonych na platformie Azure i tylko w przypadku aplikacji wdrożonych jako zasoby platformy Azure. Nie można przypisać tożsamości aplikacji, która nie została wdrożona jako zasób platformy Azure. Mówiąc koncepcyjnie, obsługa tożsamości zarządzanych w klastrze usługi Azure Service Fabric składa się z dwóch faz:

  1. Przypisz co najmniej jedną tożsamość zarządzaną do zasobu aplikacji; aplikacja może mieć przypisaną tożsamość przypisaną przez system i/lub maksymalnie 32 tożsamości przypisane przez użytkownika.

  2. W definicji aplikacji przypisz jedną z tożsamości przypisanych do aplikacji do dowolnej usługi wchodzącej w skład aplikacji.

Tożsamość przypisana przez system aplikacji jest unikatowa dla tej aplikacji; tożsamość przypisana przez użytkownika jest zasobem autonomicznym, który może być przypisany do wielu aplikacji. W aplikacji można przypisać jedną tożsamość (przypisaną przez system lub przypisaną przez użytkownika) do wielu usług aplikacji, ale każda pojedyncza usługa może mieć przypisaną tylko jedną tożsamość. Ostatecznie, usługa musi być jawnie przypisana tożsamości, aby mieć dostęp do tej funkcji. W efekcie mapowanie tożsamości aplikacji na jej usługi składowe umożliwia izolację w aplikacji — usługa może używać tylko tożsamości mapowanej na nią.

W przypadku tej funkcji obsługiwane są następujące scenariusze:

  • Wdrażanie nowej aplikacji z co najmniej jedną usługą i co najmniej jedną przypisaną tożsamością

  • Przypisywanie co najmniej jednej tożsamości zarządzanej do istniejącej aplikacji (wdrożonej na platformie Azure) w celu uzyskania dostępu do zasobów platformy Azure

Poniższe scenariusze są nieobsługiwane lub niezalecane. Te akcje mogą nie zostać zablokowane, ale mogą prowadzić do awarii w aplikacjach:

  • Usuwanie lub zmienianie tożsamości przypisanych do aplikacji. Jeśli musisz wprowadzić zmiany, wykonaj oddzielne wdrożenia, aby najpierw dodać nowe przypisanie identyfikatora, a następnie usunąć wcześniej przypisane. Usunięcie tożsamości z istniejącej aplikacji może mieć niepożądane skutki, w tym pozostawienie aplikacji w stanie niemożliwym do uaktualnienia. Usunięcie aplikacji jest bezpieczne, jeśli konieczne jest usunięcie tożsamości. Usunięcie aplikacji powoduje usunięcie dowolnej tożsamości przypisanej przez system skojarzonej z aplikacją i usunięcie wszystkich skojarzeń z wszystkimi tożsamościami przypisanymi przez użytkownika do aplikacji.

  • Usługa Service Fabric nie obsługuje tożsamości zarządzanych w przestarzałej usłudze AzureServiceTokenProvider. Zamiast tego użyj tożsamości zarządzanych w usłudze Service Fabric przy użyciu zestawu Azure Identity SDK

Następne kroki