Udostępnij za pośrednictwem


Używanie tożsamości zarządzanych na koncie lub puli usługi Azure Batch

W tym artykule wyjaśniono, jak używać tożsamości zarządzanych na koncie usługi Microsoft Azure Batch lub w puli wsadowej. W tym artykule omówiono, kiedy należy skonfigurować tożsamości zarządzane na koncie usługi Batch w porównaniu z pulą wsadową. Przedstawiono również różne scenariusze zachowania, ponieważ użycie tożsamości zarządzanej może powodować zamieszanie w niektórych sytuacjach awarii.

Wymagania wstępne

Konfigurowanie konta magazynu do użycia z kontem usługi Batch

Jeśli chcesz skonfigurować tożsamości zarządzane na koncie usługi Batch, musisz najpierw skonfigurować konto magazynu, aby było używane jako automatyczne tworzenie konta wsadowego. To autostorage służy do przechowywania pakietów aplikacji i plików zasobów zadań. Aby skonfigurować funkcję automatycznego tworzenia magazynu, musisz połączyć konto magazynu z kontem usługi Batch. Musisz również ustawić konto automatycznego tworzenia, aby używać tożsamości zarządzanych konta usługi Batch jako trybu uwierzytelniania.

Aby ukończyć tę konfigurację, wykonaj następujące kroki:

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Konta usługi Batch.

  2. Na liście kont wsadowych wybierz nazwę konta wsadowego.

  3. W okienku nawigacji konta usługi Batch znajdź nagłówek Ustawienia , a następnie wybierz pozycję Konto magazynu.

  4. W sekcji INFORMACJE O KONCIE MAGAZYNU wybierz pozycję Wybierz konto magazynu.

  5. Po zakończeniu wybierania konta magazynu wróć do sekcji INFORMACJE O KONCIE MAGAZYNU i zmień pole Tryb uwierzytelniania na Tożsamość zarządzana konta usługi Batch.

Konfigurowanie tożsamości zarządzanej na koncie usługi Batch

Uwaga 16.

Interakcja omówiona w tej sekcji dotyczy konta usługi Batch i usługi Azure Storage lub usługi Azure Key Vault. Aby uzyskać interakcję między węzłami wsadowymi i innymi zasobami platformy Azure, zobacz następną sekcję (Konfigurowanie tożsamości zarządzanej w puli wsadowej).

Konfigurując tożsamość zarządzaną na koncie usługi Batch, udzielasz uprawnień do uwierzytelniania tylko w innych usługach. Ta konfiguracja nie umożliwia uwierzytelniania w węzłach wsadowych ani maszyn wirtualnych puli wsadowej.

Podczas konfigurowania tożsamości zarządzanej na koncie usługi Batch dostępne są dwie opcje: włączenie przypisanej przez system tożsamości zarządzanej lub utworzenie oddzielnej tożsamości zarządzanej przypisanej przez użytkownika dla konta usługi Batch.

Aby skonfigurować tożsamość zarządzaną na koncie usługi Batch, wykonaj następujące kroki:

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Konta usługi Batch.

  2. Na liście kont wsadowych wybierz nazwę konta wsadowego.

  3. W okienku nawigacji konta wsadowego znajdź nagłówek Ustawienia , a następnie wybierz pozycję Tożsamość.

  4. W nagłówku Typ tożsamości wybierz pozycję Przypisane przez system (dla przypisanej przez system tożsamości zarządzanej) lub Przypisane przez użytkownika (dla tożsamości zarządzanej przypisanej przez użytkownika).

  5. Po zakończeniu tej konfiguracji wróć do strony przeglądu konta usługi Batch. W sekcji Podstawy strony wybierz pozycję Widok JSON. Reprezentacja JSON tożsamości zarządzanej będzie wyświetlana w jednym z następujących formatów:

    Tożsamość zarządzana przypisana przez system
        "identity": {
            "principalId": "<principal-guid>",
            "tenantId": "<tenant-guid>",
            "type": "SystemAssigned"
        }
    
    Tożsamość zarządzana przypisana przez użytkownika
        "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": {
                "/subscriptions/<subscription-guid>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>": {
                    "principalId": "<principal-guid>",
                    "clientId": "<client-guid>"
                }
            }
        }
    

Uzyskiwanie dostępu do konta autostorage przy użyciu tożsamości zarządzanej

Funkcja tożsamości zarządzanej konta wsadowego będzie używana w przypadku niektórych zadań, takich jak przekazywanie pakietu aplikacji do konta usługi Batch. Aby przekazać pakiet aplikacji, przejdź do strony przeglądu konta wsadowego w witrynie Azure Portal, wybierz pozycję Aplikacje>Dodaj, a następnie postępuj zgodnie z instrukcjami portalu, aby ukończyć przekazywanie. Usługa Azure Batch przechowuje pakiet aplikacji na swoim koncie autostorage. Ponieważ wcześniej ustawiono tryb uwierzytelniania konta wsadowego na tożsamość zarządzaną konta usługi Batch, system pobiera poświadczenia z tożsamości zarządzanej konta usługi Batch w celu uzyskania dostępu do konta automatycznego tworzenia magazynu.

Może być konieczne sprawdzenie, czy tożsamość zarządzana ma wystarczające uprawnienia na koncie automatycznego tworzenia. Aby sprawdzić te uprawnienia, wykonaj następujące kroki:

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Konta magazynu.

  2. Na liście kont magazynu wybierz nazwę konta automatycznego tworzenia magazynu.

  3. W okienku nawigacji konta magazynu wybierz pozycję Kontrola dostępu (Zarządzanie dostępem i tożsamościami).

  4. Na stronie Kontrola dostępu (IAM) wybierz przycisk Sprawdź dostęp.

  5. W okienku Sprawdź dostęp wybierz opcję Tożsamość zarządzana.

  6. W polu Tożsamość zarządzana wybierz tożsamość zarządzaną, dla której chcesz wyświetlić uprawnienia.

  7. Na karcie Bieżące przypisania ról sprawdź, czy istnieje przypisana rola, która ma wystarczające uprawnienia do przekazania pakietu aplikacji. Jeśli nie ma takiego przypisania roli, podczas próby przekazania pakietu aplikacji na konto usługi Batch zostanie wyświetlony następujący komunikat o błędzie:

    Błąd przekazywania dla <nazwy> pakietu.zip

    Przekazywanie pliku napotkało nieoczekiwany błąd podczas przekazywania.

Jeśli wystąpi ten błąd przekazywania, sprawdź plik Archiwum HTTP (har) żądania przekazania. Zostanie wyświetlone żądanie POST zawierające prefiks batch nazwy (na przykład batch?api-version=2020-06-01), a stan HTTP to 200. W ładunku zauważysz rzeczywiste żądanie PUT wysyłane do konta usługi Batch. Odpowiedź na żądanie PUT będzie zawierać stan HTTP 409. Pełna odpowiedź o błędzie będzie wyglądać podobnie do następującego tekstu:

{responses: [{name: "<response-guid>", httpStatusCode: 409,...}]}
  {responses: [{name: "<response-guid>", httpStatusCode: 409,...}]}
    0: {name: "<response-guid>", httpStatusCode, 409,...}
      content: {error: {code: "AutoStorageNoPermission",...}}
        error: {code: "AutoStorageNoPermission",...}
          code: "AutoStorageNoPermission"
          message: "The managed identity does not have permission to access auto storage account. Please use Azure RBAC to assign the managed identity access to auto storage."
          target: "BatchAccount"
        contentLength: 318

Ten błąd oznacza, że tożsamość zarządzana przypisana przez system lub przypisana przez użytkownika na koncie usługi Batch nie ma wystarczającego uprawnienia do podejmowania akcji na koncie automatycznego tworzenia.

Uzyskiwanie dostępu do magazynu kluczy przy użyciu tożsamości zarządzanej

Aby uzyskać informacje o sposobie uzyskiwania dostępu do usługi Azure Key Vault przy użyciu tożsamości zarządzanej przez klienta, zobacz Konfigurowanie kluczy zarządzanych przez klienta dla konta usługi Azure Batch przy użyciu usługi Azure Key Vault i tożsamości zarządzanej.

Konfigurowanie tożsamości zarządzanej w puli wsadowej

Uwaga 16.

Interakcja omówiona w tej sekcji dotyczy węzła wsadowego i innych zasobów platformy Azure. Aby uzyskać interakcję między kontem usługi Batch i usługą Azure Storage lub Azure Key Vault, zobacz poprzednią sekcję (Konfigurowanie tożsamości zarządzanej na koncie usługi Batch).

Jeśli chcesz zezwolić węzłom usługi Azure Batch na dostęp do innych zasobów platformy Azure, użyj tożsamości zarządzanej skonfigurowanej w puli usługi Azure Batch.

Jeśli tryb uwierzytelniania konta automatycznego magazynu jest ustawiony na tożsamość zarządzaną konta usługi Batch, węzły usługi Azure Batch otrzymają tokeny tożsamości zarządzanej. Węzły używają tokenów tożsamości zarządzanej do uwierzytelniania za pośrednictwem uwierzytelniania firmy Microsoft w usłudze Azure Instance Metadata Service (IMDS).

Pula usługi Azure Batch obsługuje tylko przypisaną przez użytkownika wersję tożsamości zarządzanej. W związku z tym należy utworzyć tożsamość zarządzaną przypisaną przez użytkownika w tej samej dzierżawie co konto usługi Azure Batch. Ponadto musisz przyznać uprawnienie w płaszczyźnie danych magazynu (na przykład za pośrednictwem właściciela danych obiektu blob usługi Storage) do tożsamości zarządzanej przypisanej przez użytkownika.

Kojarzenie tożsamości zarządzanej z węzłem, który uzyskuje dostęp do konta autostorage

W przypadku tożsamości przypisanej przez użytkownika używanej przez węzły obliczeniowe do uzyskiwania dostępu do automatycznego tworzenia magazynu należy przypisać to odwołanie tożsamości do pul, które mają węzły obliczeniowe, które wymagają dostępu do automatycznego tworzenia magazynu. (Szczegółowe informacje o tym wymaganiu opisano w interfejsie API REST dla elementu Konto usługi Batch — właściwość AutoStorageBaseProperties aktualizacji nodeIdentityReference . W związku z tym należy skonfigurować odwołanie do tożsamości węzła w dwóch miejscach w witrynie Azure Portal:

  • Odwołanie do tożsamości węzła w ramach konta wsadowego autostorage

  • Tożsamość zarządzana przypisana przez użytkownika w puli wsadowej

Ważne

W tożsamości puli można zdefiniować więcej niż jedną tożsamość zarządzaną przypisaną przez użytkownika. Jednak ten, który jest zdefiniowany w odwołaniu tożsamości węzła, musi być również zdefiniowany w tożsamości puli.

Konfigurowanie dokumentacji tożsamości węzła konta autostorage

Aby skonfigurować odwołanie do tożsamości węzła na koncie autostorage, wykonaj następujące kroki:

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Konta usługi Batch.

  2. Na liście kont wsadowych wybierz nazwę konta wsadowego.

  3. W okienku nawigacji konta usługi Batch znajdź nagłówek Ustawienia , a następnie wybierz pozycję Konto magazynu.

  4. W sekcji INFORMACJE O KONCIE MAGAZYNU wybierz pozycję Wybierz konto magazynu, a następnie wybierz konto autostorage.

  5. Przejdź do nagłówka Odwołania do tożsamości węzła, a następnie wybierz pozycję Dodaj.

  6. Ukończ proces dodawania nowego odwołania do tożsamości węzła przypisanego przez użytkownika.

Konfigurowanie tożsamości zarządzanej przypisanej przez użytkownika puli usługi Batch

Aby skonfigurować tożsamość zarządzaną przypisaną przez użytkownika w puli wsadowej, wykonaj następujące kroki:

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Konta usługi Batch.

  2. Na liście kont wsadowych wybierz nazwę konta wsadowego.

  3. W okienku nawigacji konta usługi Batch znajdź nagłówek Funkcje , a następnie wybierz pozycję Pule.

  4. Na stronie puli wsadowej wybierz pozycję Dodaj.

  5. Na stronie Dodawanie puli wprowadź identyfikator puli. W polu Tożsamość wybierz pozycję Użytkownik przypisany.

  6. Znajdź nagłówek Tożsamość zarządzana przypisana przez użytkownika, a następnie wybierz pozycję Dodaj.

  7. Ukończ proces dodawania odwołania tożsamości węzła utworzonego wcześniej do puli wsadowej.

Przypadki użycia tożsamości zarządzanej w węźle wsadowym

Tożsamość zarządzana w węźle wsadowym można używać na różne sposoby, na przykład w przypadku następujących funkcji:

  • Pobieranie pakietów aplikacji z puli wsadowej
  • Pobieranie plików zasobów zadań z puli wsadowej

Pobieranie pakietów aplikacji z puli wsadowej

Podczas tworzenia puli wsadowej można określić pakiety aplikacji na poziomie puli. Pakiety aplikacji zostaną pobrane z konta autostorage i zainstalowane we wszystkich węzłach w tej puli. Aby uzyskać więcej informacji, zobacz Przekazywanie aplikacji i zarządzanie nimi. Przed odwoływaniem się do nich podczas tworzenia puli wsadowej należy przekazać pakiety aplikacji do konta usługi Batch. Aby dodać pakiety aplikacji do puli wsadowej, przejdź do strony Dodawanie puli konta usługi Batch, znajdź nagłówek OPCJONALNE USTAWIENIA , a następnie wybierz pozycję Pakiety aplikacji.

Scenariusze zachowania

W tej sekcji opisano stan operacyjny węzła i stan pobierania pakietu aplikacji dla następujących parametrów tożsamości zarządzanej:

  • Czy tożsamość zarządzana jest podana w dokumentacji tożsamości węzła

  • Czy tożsamość zarządzana ma wystarczające uprawnienia na koncie autostorage

  • Czy pula wsadowa została utworzona przy użyciu tej samej tożsamości zarządzanej, czy innej tożsamości zarządzanej

W witrynie Azure Portal możesz znaleźć węzeł i stany pobierania pakietów na stronie przeglądu węzła wsadowego. Aby przejść do tej strony, znajdź nagłówek Ogólne okienka nawigacji puli wsadowej, wybierz pozycję Węzły, a następnie wybierz nazwę węzła, który chcesz wyświetlić.

W poniższej tabeli przedstawiono cztery scenariusze zachowania obejmujące tożsamości zarządzane i pakiety aplikacji w puli wsadowej.

Numer scenariusza Użycie tożsamości zarządzanej Uprawnienia tożsamości zarządzanej na koncie autostorage Specyfikacja tworzenia puli Stan węzła Stan pobierania pakietu
1 Podana w dokumentacji tożsamości węzła Wystarczające uprawnienia Utworzone w puli przy użyciu tej samej tożsamości zarządzanej Pomyślnie uruchomiono Pobrany do węzła w katalogu głównym/aplikacji
2 Podana w dokumentacji tożsamości węzła Niewystarczające uprawnienia Utworzone w puli przy użyciu tej samej tożsamości zarządzanej Rozpoczęto pomyślnie, ale w stanie bezczynności Nie pobrano do węzła
3 Nie podano w dokumentacji tożsamości węzła Wystarczające lub niewystarczające uprawnienia Utworzone w puli przy użyciu tej samej lub innej tożsamości zarządzanej Zablokowane na czas nieokreślony w stanie początkowym Nie pobrano do węzła
100 Podana w dokumentacji tożsamości węzła Wystarczające lub niewystarczające uprawnienia Utworzone w puli przy użyciu innej tożsamości zarządzanej Stan bezużyteczny Nie pobrano do węzła

W scenariuszu 3, gdy usługa Azure Batch próbuje uruchomić węzeł, odwołanie do tożsamości węzła staje się zerowe. Powoduje to, że węzeł pozostaje zablokowany w stanie Początkowy . Aby sprawdzić ten stan, przejdź do strony Przegląd węzła puli wsadowej, a następnie wybierz pozycję Przekaż dzienniki wsadowe, aby przekazać dzienniki wsadowe do kontenera magazynu. W okienku Przekazywanie dzienników wsadowych wybierz kontener usługi Azure Storage, wybierz przycisk Wybierz kontener magazynu, a następnie wybierz i pobierz plik agent-debug.log z kontenera magazynu. Plik dziennika będzie zawierać wiele wpisów, które mają komunikat "pula nie została jeszcze w pełni przyłączona, health=Status.TvmJoinPoolInProgress".

W scenariuszu 4 można zdefiniować więcej niż jedną tożsamość zarządzaną podczas tworzenia puli wsadowej. Co zrobić, jeśli tożsamość zarządzana zdefiniowana w odwołaniu tożsamości węzła nie zostanie dodana do tożsamości puli? W takim przypadku usługa Azure Batch nie może odnaleźć prawidłowej tożsamości zarządzanej zgodnej z tożsamością zdefiniowaną w odwołaniu węzła. Zamiast tego usługa wyświetli następujący komunikat o błędzie węzła:

Węzeł ma 1 błędy.

Wystąpił błąd w węźle

Kod: ApplicationPackageError

Komunikat:
Co najmniej jeden pakiet aplikacji określony dla puli jest nieprawidłowy

Pobieranie plików zasobów zadań z puli wsadowej

Podczas tworzenia zadania można określić pliki zasobów do użycia w zadaniu. Te pliki są pobierane automatycznie do węzła z konta autostorage przed uruchomieniem polecenia zadania. Aby uzyskać więcej informacji, zobacz Zadania w usłudze Azure Batch. Aby określić pliki zasobów zadań, wykonaj następujące kroki:

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Konta usługi Batch.

  2. Na liście kont wsadowych wybierz nazwę konta wsadowego.

  3. W okienku nawigacji konta usługi Batch znajdź nagłówek Funkcje i wybierz pozycję Zadania.

  4. Na stronie Zadania wybierz pozycję Dodaj.

  5. Wypełnij wymagane pola w okienku Dodawanie zadań , a następnie wybierz przycisk OK.

  6. W okienku nawigacji zadania wsadowego znajdź nagłówek Ogólne , a następnie wybierz pozycję Zadania.

  7. Na stronie Zadania wybierz pozycję Dodaj.

  8. W okienku Dodawanie zadań wypełnij wszystkie wymagane pola. Następnie znajdź nagłówek USTAWIENIA ZAAWANSOWANE i wybierz pozycję Pliki zasobów.

    Zrzut ekranu witryny Azure Portal przedstawiający okienko Dodawanie zadania na stronie Zadania konta usługi Azure Batch.

Pliki zasobów można określić przy użyciu metod opisanych w poniższej tabeli.

Method Uwagi
Kontener autostorage Odwołanie do tożsamości jest wyświetlane jako Brak i nie można go modyfikować. Węzeł uzyskuje dostęp do konta autostorage w celu pobrania plików zasobów.
Adres URL kontenera lub adres URL HTTP Możesz zdefiniować adres URL innego konta usługi Azure Storage, jeśli w ramach tego konta usługi Azure Storage skonfigurowano wystarczającą liczbę uprawnień na potrzeby odwołania do tożsamości, a tożsamość została dodana do puli wsadowej.

Jeśli potrzebujesz dostępu do konta automatycznego tworzenia, tożsamość musi być zdefiniowana zarówno w odwołaniu tożsamości węzła, jak i tożsamości puli.

Po określeniu definicji plików zasobów parametry prefiksu obiektu blob i ścieżki pliku są opcjonalne. Prefiks obiektu blob służy do filtrowania określonych obiektów blob. Ścieżka pliku służy do tworzenia podfolderu w węźle do przechowywania plików obiektów blob. Jeśli ścieżka pliku nie jest zdefiniowana, pliki będą przechowywane w ścieżce dla każdego zadania (root/wd).

Typ pliku zasobu Wartość Prefiks obiektu blob Ścieżka pliku Tryb plików (tylko system Linux) Dokumentacja tożsamości
AutoStorageContainerName <nazwa aplikacji> mypath1
StorageContainerUrl <https:// account-name.blob.core.windows.net/con> mypath2 /subscriptions/<subscription-guid>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>
HttpUrl <https:// account-name.blob.core.windows.net/con/api.crt> mypath3 /subscriptions/<subscription-guid>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>

Scenariusze zachowania

W poniższej tabeli przedstawiono cztery scenariusze zachowania, które mogą wystąpić w przypadku użycia tożsamości zarządzanej do utworzenia puli wsadowej, a następnie utworzenia zadania zawierającego pliki zasobów w celu pobrania obiektu blob z kontenera autostorage.

Numer scenariusza Użycie tożsamości zarządzanej Uprawnienia tożsamości zarządzanej na koncie autostorage Specyfikacja tworzenia puli Wynik
1 Podana w dokumentacji tożsamości węzła Wystarczające uprawnienia Utworzone w puli przy użyciu tej samej tożsamości zarządzanej Plik obiektu blob został pomyślnie pobrany do węzła w katalogu głównym/wd/<file-path> , jak pokazano na stronie przeglądu zadania
2 Podana w dokumentacji tożsamości węzła Niewystarczające uprawnienia Utworzone w puli przy użyciu tej samej tożsamości zarządzanej Zadanie kończy się niepowodzeniem z powodu błędu ResourceContainerAccessDenied , komunikat o błędzie "Odmowa dostępu dla jednego z określonych kontenerów obiektów blob platformy Azure"
3 Nie podano w dokumentacji tożsamości węzła Wystarczające lub niewystarczające uprawnienia Utworzone w puli przy użyciu tej samej lub innej tożsamości zarządzanej Zadanie kończy się niepowodzeniem z powodu błędu ResourceContainerAccessDenied , komunikat o błędzie "Odmowa dostępu dla jednego z określonych kontenerów obiektów blob platformy Azure"
100 Podana w dokumentacji tożsamości węzła Wystarczające lub niewystarczające uprawnienia Utworzone w puli przy użyciu innej tożsamości zarządzanej Zadanie kończy się niepowodzeniem z powodu błędu ResourceContainerListMiscError , komunikat o błędzie "Napotkano inny błąd podczas wyświetlania listy jednego z określonych kontenerów obiektów blob platformy Azure"

W scenariuszach, w których zadanie pobierania obiektu blob kończy się niepowodzeniem, przejdź do strony Zadania w witrynie Azure Portal, a następnie wybierz nazwę zadania wyświetlanego obok kodu błędu. Następnie w okienku nawigacji strony zadań znajdź nagłówek Ogólne , wybierz pozycję Właściwości, a następnie wybierz pozycję Widok Json. Wyświetlanie właściwości w formacie JSON spowoduje wyświetlenie odpowiedniego komunikatu o błędzie i innych szczegółów dotyczących zadania, które zakończyło się niepowodzeniem. Na przykład w scenariuszu 4 błąd ResourceContainerListMiscError kończy się niepowodzeniem z powodu błędu "Nieprawidłowe żądanie HTTP 400". Dzieje się tak, ponieważ tożsamość zarządzana zdefiniowana w odwołaniu tożsamości węzła nie jest zgodna z żadną tożsamością zarządzaną zdefiniowaną w konfiguracji tożsamości puli.

Sprawdź, czy tożsamość zarządzana może uzyskiwać dostęp do zasobów platformy Azure

Aby sprawdzić w systemie Windows, czy tożsamość zarządzana przypisana do węzła usługi Azure Batch ma wystarczające uprawnienia dostępu do zasobów platformy Azure (takich jak konto magazynu), wykonaj następujące kroki:

Uwaga 16.

Ta procedura emuluje ostatni krok, który należy wykonać, aby uzyskać token, który ma prawidłowy identyfikator tożsamości, aby uzyskać dostęp do konta magazynu i sprawdzić, czy masz wystarczające uprawnienia. Jeśli tożsamość nie jest zdefiniowana w odwołaniu do tożsamości węzła, węzeł nie może uzyskać identyfikatora tożsamości. W takim przypadku cały proces jest już zablokowany przed wykonaniem ostatniego kroku. Przed wykonaniem tej procedury sprawdź, czy tożsamość jest zdefiniowana w dokumentacji tożsamości węzła.

  1. Użyj protokołu RDP (Remote Desktop Protocol), aby nawiązać połączenie z węzłem.

  2. W narzędziu Postman wyślij żądanie GET zawierające Metadata: true nagłówek do następującego adresu URL:

    http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01& resource=https://storage.azure.com/& mi_res_id=/subscriptions/<subscription-guid>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>

    Adres 169.254.169.254 IP jest również nazywany usługą Azure Instance Metadata Service (IMDS). Usługa IMDS zawiera informacje o wystąpieniu maszyny wirtualnej. Jeśli masz informacje o tym wystąpieniu maszyny wirtualnej, możesz użyć maszyny wirtualnej do żądania tokenów tożsamości zarządzanej.

    Wartość mi_res_id parametru w adresie URL jest pogrubiona. Jest to identyfikator zasobu tożsamości zarządzanej przypisanej przez użytkownika zdefiniowanej w tożsamości puli. Aby znaleźć ten identyfikator zasobu, wraz z identyfikatorem klienta i identyfikatorem podmiotu zabezpieczeń, wykonaj następujące kroki:

    1. W witrynie Azure Portal wyszukaj i wybierz pozycję Konta usługi Batch.

    2. Na liście kont wsadowych wybierz nazwę konta wsadowego.

    3. W okienku nawigacji konta usługi Batch znajdź nagłówek Funkcje , a następnie wybierz pozycję Pule.

    4. Na liście pul wsadowych wybierz nazwę puli wsadowej.

    5. W okienku nawigacji puli wsadowej znajdź nagłówek Ogólne , a następnie wybierz pozycję Właściwości.

    6. Na stronie właściwości puli wybierz widok Json.

    7. W tekście JSON znajdź identity/userAssignedIdentities listę. W przypadku używanej tożsamości zarządzanej przypisanej przez użytkownika skopiuj wartości następujących właściwości:

      • resourceId
      • clientId (identyfikator GUID)
      • principalId (identyfikator GUID)

    Po wysłaniu adresu URL w narzędziu Postman treść odpowiedzi JSON będzie zawierać wpisy access_token (długi ciąg tekstowy, znany również jako token elementu nośnego) i client_id (identyfikator GUID). Wartość odpowiedzi powinna być zgodna client_id z wartością clientId skopiowaną ze strony właściwości puli wsadowej.

    Ostrzeżenie

    Czy zdefiniowano więcej niż jedną tożsamość zarządzaną w tożsamości puli, ale nie określono tożsamości zarządzanej w adresie URL? W takim przypadku narzędzie Postman wyświetla stan 400 Nieprawidłowe żądanie :

    Zrzut ekranu programu Postman przedstawiający stan nieprawidłowego żądania 400, jeśli zdefiniowano wiele tożsamości zarządzanych w tożsamości puli, ale nie określono go.

  3. Skopiuj pełny token elementu nośnego, a następnie przetestuj go w narzędziu Postman, pobierając obiekt blob z konta autostorage. W tym przykładzie tożsamość zarządzana nie ma uprawnień dostępu do magazynu. W związku z tym konto autostorage odpowiada, zwracając błąd HTTP 403 (AuthorizationPermissionMismatch, komunikat "To żądanie nie ma autoryzacji do wykonania tej operacji przy użyciu tego uprawnienia").

    Uwaga 16.

    Aby pobrać obiekt blob, wymagany jest nagłówek x-ms-version . Aby uzyskać więcej informacji, zobacz Azure Storage Get Blob API (Uzyskiwanie interfejsu API obiektów blob w usłudze Azure Storage).

    Zrzut ekranu narzędzia Postman przedstawiający stan 403 AuthorizationPermissionMismatch, jeśli tożsamość zarządzana nie jest autoryzowana do uzyskiwania dostępu do konta automatycznego tworzenia.

Zastrzeżenie dotyczące innych firm

Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie udziela żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, w odniesieniu do wydajności lub niezawodności tych produktów.

Wyłączenie odpowiedzialności za kontakty z osobami trzecimi

Firma Microsoft udostępnia informacje kontaktowe innych firm, aby uzyskać dodatkowe informacje na temat tego tematu. Informacje te mogą zostać zmienione bez powiadomienia. Firma Microsoft nie gwarantuje dokładności informacji kontaktowych innych firm.

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.