Udostępnij za pośrednictwem


Wyświetlanie skojarzonych zasobów platformy Azure dla tożsamości zarządzanej przypisanej przez użytkownika (wersja zapoznawcza)

W tym artykule wyjaśniono, jak wyświetlić zasoby platformy Azure skojarzone z tożsamością zarządzaną przypisaną przez użytkownika. Ta funkcja jest dostępna w publicznej wersji zapoznawczej.

Warunki wstępne

Wyświetlanie zasobów dla tożsamości zarządzanej przypisanej przez użytkownika

Możliwość szybkiego sprawdzenia, które zasoby platformy Azure są skojarzone z tożsamością zarządzaną przypisaną przez użytkownika, zapewnia lepszy wgląd w środowisko. Możesz szybko zidentyfikować nieużywane tożsamości, które można bezpiecznie usunąć, i wiedzieć, na które zasoby wpływa zmiana uprawnień lub członkostwa w grupie tożsamości zarządzanej.

Portal

  • W witrynie Azure Portal wyszukaj tożsamości zarządzanych.
  • Wybieranie tożsamości zarządzanej
  • W menu po lewej stronie wybierz link Powiązane zasoby
  • Zostanie wyświetlona lista zasobów platformy Azure skojarzonych z tożsamością zarządzaną

Zrzut ekranu przedstawiający listę skojarzonych zasobów dla tożsamości zarządzanej przypisanej przez użytkownika.

Wybierz nazwę zasobu, która ma zostać przeniesiona na stronę podsumowania.

Filtrowanie i sortowanie według typu zasobu

Przefiltruj zasoby, wpisując w polu filtru w górnej części strony podsumowania. Możesz filtrować według nazwy, typu, grupy zasobów i identyfikatora subskrypcji.

Wybierz tytuł kolumny, aby sortować alfabetycznie, rosnąco lub malejąco.

REST API

Dostęp do listy skojarzonych zasobów można również uzyskać przy użyciu interfejsu API REST. Ten punkt końcowy jest oddzielony od punktu końcowego interfejsu API używanego do pobierania listy tożsamości zarządzanych przypisanych przez użytkownika. Potrzebne są następujące informacje:

  • Identyfikator subskrypcji
  • Nazwa zasobu tożsamości zarządzanej przypisanej przez użytkownika, dla której chcesz wyświetlić zasoby
  • Grupa zasobów przypisanej przez użytkownika tożsamości zarządzanej

Format żądania

https://management.azure.com/subscriptions/{resourceID of user-assigned identity}/listAssociatedResources?$filter={filter}&$orderby={orderby}&$skip={skip}&$top={top}&$skiptoken={skiptoken}&api-version=2021-09-30-preview 

parametrów

Parametr Przykład Opis
$filter type eq 'microsoft.cognitiveservices/account' and contains(name, 'test') Wyrażenie OData, które umożliwia filtrowanie dowolnego z dostępnych pól: nazwa, typ, resourceGroup, subscriptionId, subscriptionDisplayName

Obsługiwane są następujące operacje: and, or, eq i contains
$orderby name asc Wyrażenie OData, które umożliwia kolejność według dowolnego z dostępnych pól
$skip 50 Liczba elementów, które chcesz pominąć podczas stronicowania wyników.
$top 10 Liczba zasobów do zwrócenia. Zero zwraca tylko liczbę zasobów.

Przykładowe żądanie do interfejsu API REST można wyświetlić:

POST https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/devrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/devIdentity/listAssociatedResources?$filter={filter}&$orderby={orderby}&$skip={skip}&$top={top}&skipToken={skipToken}&api-version=2021-09-30-preview 

Zwróć uwagę na przykładową odpowiedź z interfejsu API REST:

{
  "totalCount": 2,
  "value": [
    {
      "id": "/subscriptions/{subId}/resourceGroups/testrg/providers/Microsoft.CognitiveServices/accounts/test1",
      "name": "test1",
      "type": "microsoft.cognitiveservices/accounts",
      "resourceGroup": "testrg",
      "subscriptionId": "{subId}",
      "subscriptionDisplayName": "TestSubscription"
    },
    {
      "id": "/subscriptions/{subId}/resourceGroups/testrg/providers/Microsoft.CognitiveServices/accounts/test2",
      "name": "test2",
      "type": "microsoft.cognitiveservices/accounts",
      "resourceGroup": "testrg",
      "subscriptionId": "{subId}",
      "subscriptionDisplayName": "TestSubscription"
    }
  ],
  "nextLink": "https://management.azure.com/subscriptions/{subId}/resourceGroups/testrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testid?skiptoken=ew0KICAiJGlkIjogIjEiLA0KICAiTWF4Um93cyI6IDIsDQogICJSb3dzVG9Ta2lwIjogMiwNCiAgIkt1c3RvQ2x1c3RlclVybCI6ICJodHRwczovL2FybXRvcG9sb2d5Lmt1c3RvLndpbmRvd3MubmV0Ig0KfQ%253d%253d&api-version=2021"
}

Interfejs wiersza polecenia

Aby wyświetlić skojarzone zasoby dla tożsamości zarządzanej przypisanej przez użytkownika, uruchom następujące polecenie:

az identity list-resources --resource-group <ResourceGroupName> --name <ManagedIdentityName>

Odpowiedź wygląda następująco:

[
  {
    "id": "/subscriptions/XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130/resourceGroups/ProductionServices/providers/Microsoft.Compute/virtualMachines/linux-prod-1-US",
    "name": "linux-prod-1-US",
    "resourceGroup": "productionservices",
    "subscriptionDisplayName": "Visual Studio Enterprise Subscription",
    "subscriptionId": "XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130",
    "type": "microsoft.compute/virtualmachines"
  },
  {
    "id": "/subscriptions/XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130/resourceGroups/ProductionServices/providers/Microsoft.Web/sites/prodStatusCheck-US",
    "name": "prodStatusCheck-US",
    "resourceGroup": "productionservices",
    "subscriptionDisplayName": "Visual Studio Enterprise Subscription",
    "subscriptionId": "XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130",
    "type": "microsoft.web/sites"
  },
  {
    "id": "/subscriptions/XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130/resourceGroups/ProductionServices/providers/Microsoft.Web/sites/salesApp-US-1",
    "name": "salesApp-US-1",
    "resourceGroup": "productionservices",
    "subscriptionDisplayName": "Visual Studio Enterprise Subscription",
    "subscriptionId": "XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130",
    "type": "microsoft.web/sites"
  },
  {
    "id": "/subscriptions/XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130/resourceGroups/ProductionServices/providers/Microsoft.Web/sites/salesPortal-us-2",
    "name": "salesPortal-us-2",
    "resourceGroup": "productionservices",
    "subscriptionDisplayName": "Visual Studio Enterprise Subscription",
    "subscriptionId": "XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130",
    "type": "microsoft.web/sites"
  },
  {
    "id": "/subscriptions/XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130/resourceGroups/vmss/providers/Microsoft.Compute/virtualMachineScaleSets/vmsstest",
    "name": "vmsstest",
    "resourceGroup": "vmss",
    "subscriptionDisplayName": "Visual Studio Enterprise Subscription",
    "subscriptionId": "XXXX-XXXX-XXXX-XXXX-XXXfc47ab8130",
    "type": "microsoft.compute/virtualmachinescalesets"
  }
]

Interfejs API REST przy użyciu programu PowerShell

Nie ma określonego polecenia programu PowerShell do zwracania skojarzonych zasobów tożsamości zarządzanej, ale można użyć interfejsu API REST w programie PowerShell przy użyciu następującego polecenia:

Invoke-AzRestMethod -Path "/subscriptions/XXX-XXX-XXX-XXX/resourceGroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/test-identity-name/listAssociatedResources?api-version=2021-09-30-PREVIEW&%24orderby=name%20asc&%24skip=0&%24top=100" -Method Post

Notatka

Zwracane są wszystkie zasoby skojarzone z tożsamością, niezależnie od uprawnień użytkownika. Użytkownik musi mieć dostęp tylko do odczytu tożsamości zarządzanej. Oznacza to, że więcej zasobów może być widocznych niż użytkownik może zobaczyć w innym miejscu w portalu. Ma to na celu zapewnienie pełnej widoczności wykorzystania tożsamości. Jeśli użytkownik nie ma dostępu do skojarzonego zasobu, zostanie wyświetlony błąd, jeśli spróbuje uzyskać do niego dostęp z listy.

Usuwanie tożsamości zarządzanej przypisanej przez użytkownika

Po wybraniu przycisku usuwania dla tożsamości zarządzanej przypisanej przez użytkownika zostanie wyświetlona lista maksymalnie 10 skojarzonych zasobów dla tej tożsamości. Pełna liczba jest wyświetlana w górnej części okienka. Ta lista umożliwia sprawdzenie, na które zasoby mają wpływ usunięcie tożsamości. Poproszono Cię o potwierdzenie swojej decyzji.

Zrzut ekranu przedstawiający ekran potwierdzenia usuwania tożsamości zarządzanej przypisanej przez użytkownika.

Ten proces potwierdzenia jest dostępny tylko w portalu. Aby wyświetlić zasoby tożsamości przed jej usunięciem za pomocą interfejsu API REST, pobierz listę zasobów ręcznie.

Ograniczenia

  • Ta funkcja jest dostępna we wszystkich regionach publicznych oraz w regionach USGov i Chinach.
  • Żądania interfejsu API dla skojarzonych zasobów są ograniczone do jednej na sekundę na najemcę. Jeśli przekroczysz ten limit, może zostać wyświetlony błąd HTTP 429. Ten limit nie ma zastosowania do pobierania listy tożsamości zarządzanych przypisanych przez użytkownika.
  • Typy zasobów platformy Azure, które są dostępne w wersji zapoznawczej lub ich obsługa tożsamości zarządzanych jest dostępna w wersji zapoznawczej, mogą nie być wyświetlane na liście skojarzonych zasobów, dopóki nie będą w pełni ogólnie dostępne. Ta lista obejmuje klastry usługi Service Fabric, Blueprints i usługi uczenia maszynowego.
  • Ta funkcja jest ograniczona do najemców z mniejszą liczbą niż 5000 subskrypcji. Jeśli dzierżawa ma więcej niż 5000 subskrypcji, zostanie wyświetlony błąd.
  • Lista skojarzonych zasobów zawiera typ zasobu, a nie nazwę wyświetlaną.
  • Przypisania usługi Azure Policy są wyświetlane na liście, ale ich nazwy nie są poprawnie wyświetlane.
  • Ta funkcja nie jest jeszcze dostępna za pośrednictwem programu PowerShell.

Następne kroki