Uwierzytelnianie dostępu do zasobów platformy Azure przy użyciu tożsamości zarządzanych w Azure Logic Apps
W przepływach pracy aplikacji logiki niektóre wyzwalacze i akcje obsługują uwierzytelnianie dostępu do zasobów chronionych przez Azure Active Directory (Azure AD) przy użyciu tożsamości zarządzanej. Ta tożsamość była wcześniej znana jako tożsamość usługi zarządzanej (MSI). Po włączeniu zasobu aplikacji logiki do uwierzytelniania przy użyciu tożsamości zarządzanej nie trzeba podawać poświadczeń, wpisów tajnych ani tokenów usługi Azure AD. Platforma Azure zarządza tą tożsamością i pomaga zapewnić bezpieczeństwo informacji uwierzytelniania, ponieważ nie musisz zarządzać tymi poufnymi informacjami.
Azure Logic Apps obsługuje tożsamość zarządzaną przypisaną przez system i tożsamość zarządzaną przypisaną przez użytkownika, ale istnieją następujące różnice między tymi typami tożsamości:
Zasób aplikacji logiki może włączać i używać tylko jednej unikatowej tożsamości przypisanej przez system.
Zasób aplikacji logiki może współużytkować tę samą tożsamość przypisaną przez użytkownika w grupie innych zasobów aplikacji logiki.
Na podstawie typu zasobu aplikacji logiki można włączyć tożsamość przypisaną przez system, tożsamość przypisaną przez użytkownika lub obie te elementy w tym samym czasie:
Typ zasobu aplikacji logiki Środowisko Obsługa tożsamości zarządzanej Zużycie — Azure Logic Apps z wieloma dzierżawami — Środowisko usługi integracji (ISE)
— Można włączyć typ tożsamości przypisanej przez system lub typ tożsamości przypisanej przez użytkownika w zasobie aplikacji logiki. — W przypadku włączenia przy użyciu typu tożsamości przypisanej przez użytkownika zasób aplikacji logiki może mieć tylko jedną tożsamość przypisaną przez użytkownika w dowolnym momencie.
— Tożsamość można używać na poziomie zasobu aplikacji logiki i na poziomie połączenia.
Standardowa (Standard) — Azure Logic Apps z jedną dzierżawą - App Service Environment v3 (ASEv3)
— Usługa Logic Apps z obsługą usługi Azure Arc
— Można włączyć zarówno typ tożsamości przypisanej przez system, który jest domyślnie włączony, jak i typ tożsamości przypisanej przez użytkownika w tym samym czasie. — Zasób aplikacji logiki może mieć jednocześnie wiele tożsamości przypisanych przez użytkownika.
— Tożsamość można używać na poziomie zasobu aplikacji logiki i na poziomie połączenia.
Aby dowiedzieć się więcej na temat limitów tożsamości zarządzanych w Azure Logic Apps, zapoznaj się z tematem Limity tożsamości zarządzanych dla aplikacji logiki. Aby uzyskać więcej informacji na temat typów zasobów i środowisk aplikacji logiki Consumption i Standard, zapoznaj się z następującą dokumentacją:
- Co to jest usługa Azure Logic Apps?
- Jednodostępne a wielodostępne i środowisko usługi integracji
- Usługa Logic Apps z obsługą usługi Azure Arc
Gdzie można użyć tożsamości zarządzanej
Tylko określone wbudowane i zarządzane operacje łącznika, które obsługują uwierzytelnianie Open Authentication (Azure AD OAuth) mogą używać tożsamości zarządzanej do uwierzytelniania. Poniższa tabela zawiera tylko przykładowy wybór. Aby uzyskać bardziej pełną listę, zapoznaj się z artykułem Typy uwierzytelniania wyzwalaczy i akcji, które obsługują uwierzytelnianie i usługi platformy Azure obsługujące uwierzytelnianie usługi Azure AD przy użyciu tożsamości zarządzanych.
W poniższej tabeli wymieniono operacje, w których można użyć tożsamości zarządzanej przypisanej przez system lub tożsamości zarządzanej przypisanej przez użytkownika w typie zasobu Aplikacja logiki (Zużycie):
Typ operacji | Obsługiwane operacje |
---|---|
Wbudowane | — Azure API Management - aplikacja systemu Azure Services - Azure Functions - HTTP - HTTP + element webhook Uwaga: Operacje HTTP mogą uwierzytelniać połączenia z kontami usługi Azure Storage za zaporami platformy Azure przy użyciu tożsamości przypisanej przez system. Nie obsługują jednak tożsamości zarządzanej przypisanej przez użytkownika do uwierzytelniania tych samych połączeń. |
Łącznik zarządzany (wersja zapoznawcza) | Pojedyncze uwierzytelnianie: - Azure Automation - Azure Event Grid — Azure Key Vault — Azure Resource Manager — Protokół HTTP z usługą Azure AD Uwierzytelnianie wieloskładnikowe: |
W tym artykule pokazano, jak włączyć i skonfigurować tożsamość przypisaną przez system lub tożsamość przypisaną przez użytkownika na podstawie tego, czy używasz typu zasobu Aplikacja logiki (Zużycie) czy Aplikacja logiki (Standardowa). W przeciwieństwie do tożsamości przypisanej przez system, której nie trzeba tworzyć ręcznie , musisz ręcznie utworzyć tożsamość przypisaną przez użytkownika. Ten artykuł zawiera kroki tworzenia tożsamości przypisanej przez użytkownika przy użyciu szablonu Azure Portal i usługi Azure Resource Manager (szablon usługi ARM). W przypadku Azure PowerShell, interfejsu wiersza polecenia platformy Azure i interfejsu API REST platformy Azure zapoznaj się z następującą dokumentacją:
Narzędzie | Dokumentacja |
---|---|
Azure PowerShell | Tworzenie tożsamości przypisanej przez użytkownika |
Interfejs wiersza polecenia platformy Azure | Tworzenie tożsamości przypisanej przez użytkownika |
Interfejs API REST platformy Azure | Tworzenie tożsamości przypisanej przez użytkownika |
Wymagania wstępne
Konto i subskrypcja platformy Azure. Jeśli nie masz subskrypcji, zarejestruj się w celu założenia bezpłatnego konta platformy Azure. Zarówno tożsamość zarządzana, jak i docelowy zasób platformy Azure, w którym potrzebujesz dostępu, muszą korzystać z tej samej subskrypcji platformy Azure.
Aby udzielić tożsamości zarządzanej dostępu do zasobu platformy Azure, musisz dodać rolę do zasobu docelowego dla tej tożsamości. Aby dodać role, musisz mieć uprawnienia administratora usługi Azure AD , które mogą przypisywać role do tożsamości w odpowiedniej dzierżawie usługi Azure AD.
Docelowy zasób platformy Azure, do którego chcesz uzyskać dostęp. W tym zasobie dodasz rolę dla tożsamości zarządzanej, która ułatwia zasobowi aplikacji logiki lub połączeniu uwierzytelnianie dostępu do zasobu docelowego.
Zasób aplikacji logiki, w którym chcesz użyć wyzwalacza lub akcji, które obsługują tożsamości zarządzane.
Włączanie tożsamości przypisanej przez system w usłudze Azure Portal
W Azure Portal otwórz zasób aplikacji logiki.
W menu aplikacji logiki w obszarze Ustawienia wybierz pozycję Tożsamość.
W okienku Tożsamość w obszarze Przypisany system wybierz pozycję OnSave>. Gdy platforma Azure wyświetli monit o potwierdzenie, wybierz pozycję Tak.
Uwaga
Jeśli wystąpi błąd, który może mieć tylko jedną tożsamość zarządzaną, zasób aplikacji logiki jest już skojarzony z tożsamością przypisaną przez użytkownika. Przed dodaniem tożsamości przypisanej przez system należy najpierw usunąć tożsamość przypisaną przez użytkownika z zasobu aplikacji logiki.
Zasób aplikacji logiki może teraz używać tożsamości przypisanej przez system. Ta tożsamość jest zarejestrowana w usłudze Azure AD i jest reprezentowana przez identyfikator obiektu.
Właściwość Wartość Opis Identyfikator obiektu (podmiotu zabezpieczeń) <identity-resource-ID> Unikatowy identyfikator globalny (GUID), który reprezentuje tożsamość przypisaną przez system dla aplikacji logiki w dzierżawie usługi Azure AD. Teraz wykonaj kroki, które zapewniają tej tożsamości dostęp do zasobu w dalszej części tego tematu.
Włączanie tożsamości przypisanej przez system w szablonie usługi ARM
Aby zautomatyzować tworzenie i wdrażanie zasobów platformy Azure, takich jak aplikacje logiki, można użyć szablonu usługi ARM. Aby włączyć tożsamość zarządzaną przypisaną przez system dla zasobu aplikacji logiki w szablonie, dodaj identity
obiekt i type
właściwość podrzędną do definicji zasobów aplikacji logiki w szablonie, na przykład:
{
"apiVersion": "2016-06-01",
"type": "Microsoft.logic/workflows",
"name": "[variables('logicappName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "SystemAssigned"
},
"properties": {},
<...>
}
Gdy platforma Azure utworzy definicję zasobu aplikacji logiki, identity
obiekt pobiera następujące inne właściwości:
"identity": {
"type": "SystemAssigned",
"principalId": "<principal-ID>",
"tenantId": "<Azure-AD-tenant-ID>"
}
Właściwość (JSON) | Wartość | Opis |
---|---|---|
principalId |
<principal-ID> | Globalnie unikatowy identyfikator (GUID) obiektu jednostki usługi dla tożsamości zarządzanej reprezentującej aplikację logiki w dzierżawie usługi Azure AD. Ten identyfikator GUID czasami jest wyświetlany jako "identyfikator obiektu" lub objectID . |
tenantId |
<Azure-AD-tenant-ID> | Unikatowy identyfikator globalny (GUID), który reprezentuje dzierżawę usługi Azure AD, w której aplikacja logiki jest teraz członkiem. W dzierżawie usługi Azure AD jednostka usługi ma taką samą nazwę jak wystąpienie aplikacji logiki. |
Tworzenie tożsamości przypisanej przez użytkownika w Azure Portal
Przed włączeniem tożsamości przypisanej przez użytkownika w zasobie Aplikacji logiki (Zużycie) lub Aplikacji logiki (Standardowa) należy najpierw utworzyć tę tożsamość jako oddzielny zasób platformy Azure.
W polu wyszukiwania Azure Portal wprowadź .
managed identities
Wybierz pozycję Tożsamości zarządzane.W okienku Tożsamości zarządzane wybierz pozycję Utwórz.
Podaj informacje o tożsamości zarządzanej, a następnie wybierz pozycję Przejrzyj i utwórz, na przykład:
Właściwość Wymagany Wartość Opis Subskrypcja Tak <Nazwa subskrypcji platformy Azure> Nazwa subskrypcji platformy Azure do użycia Grupa zasobów Tak <Nazwa grupy zasobów platformy Azure> Nazwa grupy zasobów platformy Azure do użycia. Utwórz nową grupę lub wybierz istniejącą grupę. W tym przykładzie zostanie utworzona nowa grupa o nazwie fabrikam-managed-identities-RG
.Region Tak <Region świadczenia usługi Azure> Region świadczenia usługi Azure, w którym mają być przechowywane informacje o zasobie. W tym przykładzie użyto zachodnich stanów USA. Nazwa Tak <user-assigned-identity-name> Nazwa, która ma nadać tożsamość przypisaną przez użytkownika. W tym przykładzie użyto wartości Fabrikam-user-assigned-identity
.Gdy platforma Azure zweryfikuje informacje, platforma Azure utworzy tożsamość zarządzaną. Teraz możesz dodać tożsamość przypisaną przez użytkownika do zasobu aplikacji logiki.
Dodawanie tożsamości przypisanej przez użytkownika do aplikacji logiki w Azure Portal
W Azure Portal otwórz zasób aplikacji logiki.
W menu aplikacji logiki w obszarze Ustawienia wybierz pozycję Tożsamość.
W okienku Tożsamość wybierz pozycję Przypisane przez>użytkownikaDodaj.
W okienku Dodawanie tożsamości zarządzanej przypisanej przez użytkownika wykonaj następujące kroki:
Z listy Subskrypcja wybierz subskrypcję platformy Azure, jeśli nie została jeszcze wybrana.
Z listy ze wszystkimi tożsamościami zarządzanymi w tej subskrypcji wybierz odpowiednią tożsamość przypisaną przez użytkownika. Aby filtrować listę, w polu wyszukiwania Tożsamości zarządzane przypisane przez użytkownika wprowadź nazwę tożsamości lub grupy zasobów.
Gdy wszystko będzie gotowe, wybierz pozycję Dodaj.
Uwaga
Jeśli wystąpi błąd, który może mieć tylko jedną tożsamość zarządzaną, aplikacja logiki jest już skojarzona z tożsamością przypisaną przez system. Przed dodaniem tożsamości przypisanej przez użytkownika należy najpierw wyłączyć tożsamość przypisaną przez system.
Aplikacja logiki jest teraz skojarzona z tożsamością zarządzaną przypisaną przez użytkownika.
Teraz wykonaj kroki, które zapewniają tej tożsamości dostęp do zasobu w dalszej części tego tematu.
Tworzenie tożsamości przypisanej przez użytkownika w szablonie usługi ARM
Aby zautomatyzować tworzenie i wdrażanie zasobów platformy Azure, takich jak aplikacje logiki, można użyć szablonu usługi ARM, który obsługuje tożsamości przypisane przez użytkownika do uwierzytelniania.
W sekcji szablonu resources
definicja zasobu aplikacji logiki wymaga następujących elementów:
Obiekt
identity
z właściwością ustawionątype
naUserAssigned
Obiekt podrzędny
userAssignedIdentities
określający zasób przypisany przez użytkownika i nazwę
W tym przykładzie przedstawiono definicję zasobu aplikacji logiki Zużycie dla żądania HTTP PUT i zawiera obiekt niesparametryzowany identity
. Odpowiedź na żądanie PUT i kolejna operacja GET również ma następujący identity
obiekt:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {<template-parameters>},
"resources": [
{
"apiVersion": "2016-06-01",
"type": "Microsoft.logic/workflows",
"name": "[variables('logicappName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"/subscriptions/<Azure-subscription-ID>/resourceGroups/<Azure-resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>": {}
}
},
"properties": {
"definition": {<logic-app-workflow-definition>}
},
"parameters": {},
"dependsOn": []
},
],
"outputs": {}
}
Jeśli szablon zawiera również definicję zasobu tożsamości zarządzanej, można sparametryzować identity
obiekt. W tym przykładzie pokazano, jak obiekt podrzędny userAssignedIdentities
userAssignedIdentityName
odwołuje się do zmiennej zdefiniowanej w sekcji szablonu variables
. Ta zmienna odwołuje się do identyfikatora zasobu tożsamości przypisanej przez użytkownika.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"Template_LogicAppName": {
"type": "string"
},
"Template_UserAssignedIdentityName": {
"type": "securestring"
}
},
"variables": {
"logicAppName": "[parameters(`Template_LogicAppName')]",
"userAssignedIdentityName": "[parameters('Template_UserAssignedIdentityName')]"
},
"resources": [
{
"apiVersion": "2016-06-01",
"type": "Microsoft.logic/workflows",
"name": "[variables('logicAppName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]": {}
}
},
"properties": {
"definition": {<logic-app-workflow-definition>}
},
"parameters": {},
"dependsOn": [
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]"
]
},
{
"apiVersion": "2018-11-30",
"type": "Microsoft.ManagedIdentity/userAssignedIdentities",
"name": "[parameters('Template_UserAssignedIdentityName')]",
"location": "[resourceGroup().location]",
"properties": {}
}
]
}
Przyznawanie tożsamości dostępu do zasobów
Aby można było użyć tożsamości zarządzanej aplikacji logiki do uwierzytelniania, musisz skonfigurować dostęp dla tożsamości w zasobie platformy Azure, w którym chcesz użyć tożsamości. Sposób konfigurowania dostępu różni się w zależności od zasobu, do którego ma uzyskiwać dostęp tożsamość.
Uwaga
Jeśli tożsamość zarządzana ma dostęp do zasobu platformy Azure w tej samej subskrypcji, tożsamość może uzyskać dostęp tylko do tego zasobu. Jednak w niektórych wyzwalaczach i akcjach obsługujących tożsamości zarządzane należy najpierw wybrać grupę zasobów platformy Azure zawierającą zasób docelowy. Jeśli tożsamość nie ma dostępu na poziomie grupy zasobów, żadne zasoby w tej grupie nie są wyświetlane, mimo że mają dostęp do zasobu docelowego.
Aby obsłużyć to zachowanie, należy również udzielić tożsamości dostępu do grupy zasobów, a nie tylko do zasobu. Podobnie jeśli musisz wybrać subskrypcję przed wybraniem zasobu docelowego, musisz udzielić tożsamości dostępu do subskrypcji.
Aby na przykład uzyskać dostęp do konta usługi Azure Blob Storage przy użyciu tożsamości zarządzanej, musisz skonfigurować dostęp przy użyciu kontroli dostępu opartej na rolach (RBAC) platformy Azure i przypisać odpowiednią rolę dla tej tożsamości do konta magazynu. W krokach w tej sekcji opisano sposób wykonywania tego zadania przy użyciu szablonu usługi Azure Portal i usługi Azure Resource Manager (szablon usługi ARM). W przypadku Azure PowerShell, interfejsu wiersza polecenia platformy Azure i interfejsu API REST platformy Azure zapoznaj się z następującą dokumentacją:
Narzędzie | Dokumentacja |
---|---|
Azure PowerShell | Dodaj przypisanie roli |
Interfejs wiersza polecenia platformy Azure | Dodaj przypisanie roli |
Interfejs API REST platformy Azure | Dodaj przypisanie roli |
Jednak aby uzyskać dostęp do magazynu kluczy platformy Azure przy użyciu tożsamości zarządzanej, musisz utworzyć zasady dostępu dla tej tożsamości w magazynie kluczy i przypisać odpowiednie uprawnienia dla tej tożsamości w tym magazynie kluczy. W kolejnych krokach w tej sekcji opisano sposób wykonywania tego zadania przy użyciu Azure Portal. W przypadku szablonów Resource Manager programu PowerShell i interfejsu wiersza polecenia platformy Azure zapoznaj się z następującą dokumentacją:
Narzędzie | Dokumentacja |
---|---|
Szablon usługi Azure Resource Manager (szablon usługi ARM) | definicja zasobu zasad dostępu Key Vault |
Azure PowerShell | Przypisywanie zasad dostępu Key Vault |
Interfejs wiersza polecenia platformy Azure | Przypisywanie zasad dostępu Key Vault |
Przypisywanie dostępu opartego na rolach tożsamości zarządzanej w Azure Portal
Aby użyć tożsamości zarządzanej do uwierzytelniania, niektóre zasoby platformy Azure, takie jak konta usługi Azure Storage, wymagają przypisania tej tożsamości do roli, która ma odpowiednie uprawnienia do zasobu docelowego. Inne zasoby platformy Azure, takie jak magazyny kluczy platformy Azure, wymagają utworzenia zasad dostępu, które mają odpowiednie uprawnienia do zasobu docelowego dla tej tożsamości.
W Azure Portal otwórz zasób, w którym chcesz użyć tożsamości.
W menu zasobu wybierz pozycję Kontrola dostępu (IAM)>DodajDodaj>przypisanie roli.
Uwaga
Jeśli opcja Dodaj przypisanie roli jest wyłączona, nie masz uprawnień do przypisywania ról. Aby uzyskać więcej informacji, zapoznaj się z wbudowanymi rolami usługi Azure AD.
Teraz przypisz niezbędną rolę do tożsamości zarządzanej. Na karcie Rola przypisz rolę, która zapewnia tożsamości wymagany dostęp do bieżącego zasobu.
W tym przykładzie przypisz rolę o nazwie Storage Współautor danych obiektu blob, która obejmuje dostęp do zapisu dla obiektów blob w kontenerze usługi Azure Storage. Aby uzyskać więcej informacji na temat określonych ról kontenera magazynu, zobacz Role, które mogą uzyskiwać dostęp do obiektów blob w kontenerze usługi Azure Storage.
Następnie wybierz tożsamość zarządzaną, do której chcesz przypisać rolę. W obszarze Przypisz dostęp do wybierz pozycję Tożsamość>zarządzanaDodaj członków.
Na podstawie typu tożsamości zarządzanej wybierz lub podaj następujące wartości:
Typ Wystąpienie usługi platformy Azure Subskrypcja Członek Przypisane przez system Aplikacja logiki <Nazwa subskrypcji platformy Azure> <nazwa aplikacji logiki> Przypisana przez użytkownika Nie dotyczy <Nazwa subskrypcji platformy Azure> <nazwa-tożsamości przypisanej przez użytkownika> Aby uzyskać więcej informacji na temat przypisywania ról, zapoznaj się z dokumentacją Przypisywanie ról przy użyciu Azure Portal.
Po zakończeniu możesz użyć tożsamości do uwierzytelniania dostępu dla wyzwalaczy i akcji, które obsługują tożsamości zarządzane.
Aby uzyskać więcej ogólnych informacji na temat tego zadania, zobacz Przypisywanie dostępu tożsamości zarządzanej do innego zasobu przy użyciu kontroli dostępu opartej na rolach platformy Azure.
Tworzenie zasad dostępu w Azure Portal
Aby użyć tożsamości zarządzanej do uwierzytelniania, niektóre zasoby platformy Azure, takie jak magazyny kluczy platformy Azure, wymagają utworzenia zasad dostępu, które mają odpowiednie uprawnienia do zasobu docelowego dla tej tożsamości. Inne zasoby platformy Azure, takie jak konta usługi Azure Storage, wymagają przypisania tej tożsamości do roli, która ma odpowiednie uprawnienia do zasobu docelowego.
W Azure Portal otwórz zasób docelowy, w którym chcesz użyć tożsamości. W tym przykładzie jako zasób docelowy jest używany magazyn kluczy platformy Azure.
W menu zasobu wybierz pozycję Zasady>dostępuUtwórz, co spowoduje otwarcie okienka Tworzenie zasad dostępu.
Uwaga
Jeśli zasób nie ma opcji Zasady dostępu , zamiast tego spróbuj przypisać przypisanie roli.
Na karcie Uprawnienia wybierz wymagane uprawnienia, które tożsamość musi uzyskać dostęp do zasobu docelowego.
Aby na przykład użyć tożsamości z operacją Listy wpisów tajnych zarządzanego łącznika usługi Azure Key Vault, tożsamość wymaga uprawnień lista. W kolumnie Uprawnienia wpisu tajnego wybierz pozycję Lista.
Gdy wszystko będzie gotowe, wybierz pozycję Dalej. Na karcie Podmiot zabezpieczeń znajdź i wybierz tożsamość zarządzaną, która jest tożsamością przypisaną przez użytkownika w tym przykładzie.
Pomiń opcjonalny krok Aplikacja , wybierz pozycję Dalej i zakończ tworzenie zasad dostępu.
W następnej sekcji dotyczącej używania tożsamości zarządzanej do uwierzytelniania dostępu dla wyzwalacza lub akcji przykład będzie kontynuowany z krokami z wcześniejszej sekcji, w której skonfigurowaliśmy dostęp dla tożsamości zarządzanej przy użyciu kontroli dostępu opartej na rolach i nie używamy usługi Azure Key Vault jako przykładu. Jednak ogólne kroki używania tożsamości zarządzanej do uwierzytelniania są takie same.
Uwierzytelnianie dostępu za pomocą tożsamości zarządzanej
Po włączeniu tożsamości zarządzanej dla zasobu aplikacji logiki i udzieleniu tej tożsamości dostępu do zasobu docelowego lub jednostki można użyć tej tożsamości w wyzwalaczach i akcjach, które obsługują tożsamości zarządzane.
Ważne
Jeśli masz funkcję platformy Azure, w której chcesz używać tożsamości przypisanej przez system, najpierw włącz uwierzytelnianie dla Azure Functions.
Te kroki pokazują, jak używać tożsamości zarządzanej z wyzwalaczem lub akcją za pośrednictwem Azure Portal. Aby określić tożsamość zarządzaną w podstawowej definicji JSON wyzwalacza lub akcji, zapoznaj się z artykułem Uwierzytelnianie tożsamości zarządzanej.
W Azure Portal otwórz zasób aplikacji logiki.
Jeśli jeszcze tego nie zrobiono, dodaj wyzwalacz lub akcję, która obsługuje tożsamości zarządzane.
Uwaga
Nie wszystkie wyzwalacze i akcje obsługują dodawanie typu uwierzytelniania. Aby uzyskać więcej informacji, zapoznaj się z tematem Typy uwierzytelniania dla wyzwalaczy i akcji, które obsługują uwierzytelnianie.
Na dodanym wyzwalaczu lub akcji wykonaj następujące kroki:
Wbudowane operacje obsługujące uwierzytelnianie tożsamości zarządzanej
Z listy Dodaj nowy parametr dodaj właściwość Authentication , jeśli właściwość nie jest jeszcze wyświetlana.
Z listy Typ uwierzytelniania wybierz pozycję Tożsamość zarządzana.
Aby uzyskać więcej informacji, zobacz Przykład: Uwierzytelnianie wbudowanego wyzwalacza lub akcji za pomocą tożsamości zarządzanej.
Operacje łącznika zarządzanego obsługujące uwierzytelnianie tożsamości zarządzanej (wersja zapoznawcza)
Na stronie wyboru dzierżawy wybierz pozycję Połączenie z tożsamością zarządzaną (wersja zapoznawcza), na przykład:
Na następnej stronie w polu Nazwa połączenia podaj nazwę do użycia dla połączenia.
Dla typu uwierzytelniania wybierz jedną z następujących opcji na podstawie łącznika zarządzanego:
Jednouwierzytelnianie: te łączniki obsługują tylko jeden typ uwierzytelniania. Z listy Tożsamość zarządzana wybierz obecnie włączoną tożsamość zarządzaną, jeśli nie została jeszcze wybrana, a następnie wybierz pozycję Utwórz, na przykład:
Uwierzytelnianie wieloskładnikowe: te łączniki pokazują wiele typów uwierzytelniania, ale nadal można wybrać tylko jeden typ. Z listy Typ uwierzytelniania wybierz pozycję Tożsamość> zarządzana usługi Logic AppsUtwórz, na przykład:
Aby uzyskać więcej informacji, zobacz Przykład: Uwierzytelnianie wyzwalacza lub akcji łącznika zarządzanego przy użyciu tożsamości zarządzanej.
Przykład: Uwierzytelnianie wbudowanego wyzwalacza lub akcji przy użyciu tożsamości zarządzanej
Wbudowany wyzwalacz HTTP lub akcja może używać tożsamości przypisanej przez system włączonej w zasobie aplikacji logiki. Ogólnie rzecz biorąc, wyzwalacz HTTP lub akcja używa następujących właściwości do określenia zasobu lub jednostki, do której chcesz uzyskać dostęp:
Właściwość | Wymagane | Opis |
---|---|---|
Metoda | Tak | Metoda HTTP używana przez operację, którą chcesz uruchomić |
URI | Tak | Adres URL punktu końcowego na potrzeby uzyskiwania dostępu do docelowego zasobu lub jednostki platformy Azure. Składnia identyfikatora URI zwykle zawiera identyfikator zasobu dla zasobu lub usługi platformy Azure. |
Nagłówki | Nie | Wszelkie wartości nagłówka, które są potrzebne lub które chcesz uwzględnić w żądaniu wychodzącym, takie jak typ zawartości |
Zapytania | Nie | Wszystkie wymagane parametry zapytania lub które chcesz uwzględnić w żądaniu, takie jak parametr dla określonej operacji lub wersja interfejsu API dla operacji, którą chcesz uruchomić |
Authentication | Tak | Typ uwierzytelniania używany do uwierzytelniania dostępu do zasobu docelowego lub jednostki |
Załóżmy na przykład, że chcesz uruchomić operację migawki obiektu blob na obiekcie blob na koncie usługi Azure Storage, na którym wcześniej skonfigurowaliśmy dostęp dla tożsamości. Jednak łącznik Azure Blob Storage nie oferuje obecnie tej operacji. Zamiast tego możesz uruchomić tę operację przy użyciu akcji HTTP lub innej operacji interfejsu API REST usługi Blob Service.
Ważne
Aby uzyskać dostęp do kont magazynu platformy Azure za zaporami przy użyciu żądań HTTP i tożsamości zarządzanych, upewnij się, że skonfigurowaliśmy również konto magazynu z wyjątkiem, który zezwala na dostęp przez zaufane usługi firmy Microsoft.
Aby uruchomić operację migawki obiektu blob, akcja HTTP określa następujące właściwości:
Właściwość | Wymagany | Przykładowa wartość | Opis |
---|---|---|---|
Metoda | Tak | PUT |
Metoda HTTP używana przez operację migawki obiektu blob |
URI | Tak | https://<storage-account-name>/<folder-name>/{name} |
Identyfikator zasobu dla pliku Azure Blob Storage w środowisku globalnym platformy Azure (publicznym), który używa tej składni |
Nagłówki | W przypadku usługi Azure Storage | x-ms-blob-type = BlockBlob
|
Wartości nagłówków x-ms-blob-type , x-ms-version i i x-ms-date są wymagane dla operacji usługi Azure Storage. Ważne: W wychodzącym wyzwalaczu HTTP i żądaniach akcji dla usługi Azure Storage nagłówek wymaga Aby uzyskać więcej informacji, zapoznaj się z następującymi tematami: - Nagłówki żądań — migawka obiektu blob |
Zapytania | Tylko dla operacji migawki obiektu blob | comp = snapshot |
Nazwa i wartość parametru zapytania dla operacji. |
W poniższym przykładzie pokazano przykładową akcję HTTP z wszystkimi wcześniej opisanymi wartościami właściwości do użycia dla operacji migawki obiektu blob:
Po dodaniu akcji HTTP dodaj właściwość Uwierzytelnianie do akcji HTTP. Z listy Dodaj nowy parametr wybierz pozycję Uwierzytelnianie.
Uwaga
Nie wszystkie wyzwalacze i akcje obsługują dodawanie typu uwierzytelniania. Aby uzyskać więcej informacji, zapoznaj się z tematem Typy uwierzytelniania dla wyzwalaczy i akcji, które obsługują uwierzytelnianie.
Z listy Typ uwierzytelniania wybierz pozycję Tożsamość zarządzana.
Z listy tożsamości zarządzanej wybierz z dostępnych opcji na podstawie danego scenariusza.
Jeśli skonfigurujesz tożsamość przypisaną przez system, wybierz opcję Tożsamość zarządzana przypisana przez system , jeśli nie została jeszcze wybrana.
Jeśli skonfigurujesz tożsamość przypisaną przez użytkownika, wybierz tę tożsamość, jeśli nie została jeszcze wybrana.
W tym przykładzie jest kontynuowana tożsamość zarządzana przypisana przez system.
W niektórych wyzwalaczach i akcjach właściwość Odbiorcy jest również wyświetlana, aby ustawić identyfikator zasobu docelowego. Ustaw właściwość Audience na identyfikator zasobu dla zasobu docelowego lub usługi. W przeciwnym razie właściwość Audience domyślnie używa identyfikatora
https://management.azure.com/
zasobu, który jest identyfikatorem zasobu dla usługi Azure Resource Manager.Jeśli na przykład chcesz uwierzytelnić dostęp do zasobu Key Vault w globalnej chmurze platformy Azure, musisz ustawić właściwość Audience na dokładnie następujący identyfikator zasobu:
https://vault.azure.net
. Należy pamiętać, że ten konkretny identyfikator zasobu nie ma żadnych końcowych ukośników. W rzeczywistości dołączenie końcowego ukośnika może spowodować wystąpienie400 Bad Request
błędu lub błędu401 Unauthorized
.Ważne
Upewnij się, że identyfikator zasobu docelowego dokładnie odpowiada wartości oczekiwanej przez Azure Active Directory (AD), w tym wszelkich wymaganych ukośników końcowych. Na przykład identyfikator zasobu dla wszystkich kont Azure Blob Storage wymaga końcowego ukośnika. Jednak identyfikator zasobu dla określonego konta magazynu nie wymaga końcowego ukośnika. Sprawdź identyfikatory zasobów dla usług platformy Azure, które obsługują usługę Azure AD.
W tym przykładzie właściwość Audience ustawia wartość ,
https://storage.azure.com/
aby tokeny dostępu używane do uwierzytelniania były prawidłowe dla wszystkich kont magazynu. Można jednak również określić adres URL usługi głównej ,https://<your-storage-account>.blob.core.windows.net
dla określonego konta magazynu.Aby uzyskać więcej informacji na temat autoryzowania dostępu za pomocą usługi Azure AD dla usługi Azure Storage, zapoznaj się z następującą dokumentacją:
Kontynuuj tworzenie przepływu pracy w żądany sposób.
Przykład: Uwierzytelnianie wyzwalacza lub akcji łącznika zarządzanego przy użyciu tożsamości zarządzanej
Łącznik zarządzany usługi Azure Resource Manager ma akcję Odczyt zasobu, która może używać tożsamości zarządzanej włączonej w zasobie aplikacji logiki. W tym przykładzie pokazano, jak używać przypisanej przez system tożsamości zarządzanej.
Po dodaniu akcji do przepływu pracy i wybraniu dzierżawy usługi Azure AD wybierz pozycję Połączenie z tożsamością zarządzaną (wersja zapoznawcza).
Na stronie nazwa połączenia podaj nazwę połączenia i wybierz tożsamość zarządzaną, której chcesz użyć.
Akcja azure Resource Manager jest akcją pojedynczego uwierzytelniania, więc w okienku informacji o połączeniu jest wyświetlana lista Tożsamości zarządzanej, która automatycznie wybiera tożsamość zarządzaną, która jest obecnie włączona w zasobie aplikacji logiki. Jeśli włączono tożsamość zarządzaną przypisaną przez system, lista Tożsamość zarządzana wybierze tożsamość zarządzaną przypisaną przez system. Jeśli zamiast tego włączono tożsamość zarządzaną przypisaną przez użytkownika, lista wybiera tę tożsamość.
Jeśli używasz wyzwalacza lub akcji z wieloma uwierzytelnianiem, takiego jak Azure Blob Storage, w okienku informacji o połączeniu jest wyświetlana lista Typ uwierzytelniania zawierająca opcję Tożsamość zarządzana usługi Logic Apps wśród innych typów uwierzytelniania.
W tym przykładzie tożsamość zarządzana przypisana przez system jest jedynym dostępnym wyborem.
Uwaga
Jeśli tożsamość zarządzana nie jest włączona podczas próby utworzenia połączenia, zmień połączenie lub została usunięta, gdy połączenie z włączoną tożsamością zarządzaną nadal istnieje, zostanie wyświetlony komunikat o błędzie, który musi włączyć tożsamość i udzielić dostępu do zasobu docelowego.
Gdy wszystko będzie gotowe, wybierz pozycję Utwórz.
Po pomyślnym utworzeniu połączenia przez projektanta projektant może pobrać dowolne wartości dynamiczne, zawartość lub schemat przy użyciu uwierzytelniania tożsamości zarządzanej.
Kontynuuj tworzenie przepływu pracy w żądany sposób.
Definicja zasobu aplikacji logiki i połączenia korzystające z tożsamości zarządzanej
Połączenie, które włącza tożsamość zarządzaną i używa jej, to specjalny typ połączenia, który działa tylko z tożsamością zarządzaną. W czasie wykonywania połączenie korzysta z tożsamości zarządzanej włączonej w zasobie aplikacji logiki. W czasie wykonywania usługa Azure Logic Apps sprawdza, czy wszystkie akcje i wyzwalacze łącznika zarządzanego w przepływie pracy aplikacji logiki są skonfigurowane do korzystania z tożsamości zarządzanej oraz czy wszystkie wymagane uprawnienia są skonfigurowane do używania tożsamości zarządzanej na potrzeby uzyskiwania dostępu do zasobów docelowych określonych przez wyzwalacz i akcje. W przypadku powodzenia Azure Logic Apps pobiera token usługi Azure AD skojarzony z tożsamością zarządzaną i używa tej tożsamości do uwierzytelniania dostępu do zasobu docelowego oraz wykonywania skonfigurowanej operacji w wyzwalaczu i akcjach.
W zasobie aplikacji logiki (Zużycie) konfiguracja połączenia jest zapisywana w obiekcie definicji parameters
zasobu aplikacji logiki, który zawiera $connections
obiekt zawierający wskaźniki do identyfikatora zasobu połączenia wraz z identyfikatorem zasobu tożsamości, jeśli tożsamość przypisana przez użytkownika jest włączona.
W tym przykładzie pokazano, jak wygląda konfiguracja, gdy aplikacja logiki włączy tożsamość zarządzaną przypisaną przez system :
"parameters": {
"$connections": {
"value": {
"<action-name>": {
"connectionId": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/{connection-name}",
"connectionName": "{connection-name}",
"connectionProperties": {
"authentication": {
"type": "ManagedServiceIdentity"
}
},
"id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/{managed-connector-type}"
}
}
}
}
W tym przykładzie pokazano, jak wygląda konfiguracja, gdy aplikacja logiki włączy tożsamość zarządzaną przypisaną przez użytkownika :
"parameters": {
"$connections": {
"value": {
"<action-name>": {
"connectionId": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/{connection-name}",
"connectionName": "{connection-name}",
"connectionProperties": {
"authentication": {
"type": "ManagedServiceIdentity",
"identity": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resourceGroupName}/providers/microsoft.managedidentity/userassignedidentities/{managed-identity-name}"
}
},
"id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/{managed-connector-type}"
}
}
}
}
Szablon usługi ARM dla połączeń interfejsu API i tożsamości zarządzanych
Jeśli używasz szablonu usługi ARM do automatyzacji wdrażania, a przepływ pracy zawiera połączenie interfejsu API, które jest tworzone przez łącznik zarządzany, taki jak Office 365 Outlook, azure Key Vault i tak dalej, że używa tożsamości zarządzanej, musisz wykonać dodatkowy krok.
W szablonie usługi ARM podstawowa definicja zasobu łącznika różni się w zależności od tego, czy masz aplikację logiki Zużycie, czy Standardowa oraz czy łącznik wyświetla opcje uwierzytelniania jednouwierzytelniania lub wielu uwierzytelniania.
Poniższe przykłady dotyczą aplikacji logiki Zużycie i pokazują, jak podstawowa definicja zasobu łącznika różni się między łącznikiem pojedynczego uwierzytelniania, takim jak Azure Automation i łącznikiem z wieloma uwierzytelnianiem, takimi jak Azure Blob Storage.
Pojedyncze uwierzytelnianie
W tym przykładzie przedstawiono podstawową definicję zasobu połączenia dla akcji Azure Automation w aplikacji logiki Zużycie, która używa tożsamości zarządzanej, w której definicja zawiera atrybuty:
- Właściwość
apiVersion
ma ustawioną wartość2016-06-01
. - Właściwość jest ustawiona
kind
naV1
wartość dla aplikacji logiki Zużycie. - Właściwość
parameterValueType
ma ustawioną wartośćAlternative
.
{
"type": "Microsoft.Web/connections",
"name": "[variables('connections_azureautomation_name')]",
"apiVersion": "2016-06-01",
"location": "[parameters('location')]",
"kind": "V1",
"properties": {
"api": {
"id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureautomation')]"
},
"customParameterValues": {},
"displayName": "[variables('connections_azureautomation_name')]",
"parameterValueType": "Alternative"
}
},
Uwierzytelnianie wieloskładnikowe
W tym przykładzie przedstawiono podstawową definicję zasobu połączenia dla akcji Azure Blob Storage w aplikacji logiki Zużycie, która używa tożsamości zarządzanej, w której definicja zawiera następujące atrybuty:
- Właściwość
apiVersion
ma ustawioną wartość2018-07-01-preview
. - Właściwość jest ustawiona
kind
naV1
wartość dla aplikacji logiki Zużycie. - Obiekt
parameterValueSet
zawiera właściwość ustawionąname
namanagedIdentityAuth
i właściwość ustawionąvalues
na pusty obiekt.
{
"type": "Microsoft.Web/connections",
"apiVersion": "2018-07-01-preview",
"name": "[variables('connections_azureblob_name')]",
"location": "[parameters('location')]",
"kind": "V1",
"properties": {
"alternativeParameterValues":{},
"api": {
"id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureblob')]"
},
"customParameterValues": {},
"displayName": "[variables('connections_azureblob_name')]",
"parameterValueSet":{
"name": "managedIdentityAuth",
"values": {}
}
},
Konfigurowanie zaawansowanej kontroli nad uwierzytelnianiem połączenia interfejsu API
Gdy przepływ pracy korzysta z połączenia interfejsu API, które jest tworzone przez łącznik zarządzany, taki jak Office 365 Outlook, Azure Key Vault itd., usługa Azure Logic Apps komunikuje się z zasobem docelowym, takim jak konto e-mail, magazyn kluczy itd., przy użyciu dwóch połączeń:
Połączenie #1 jest skonfigurowane z uwierzytelnianiem dla wewnętrznego magazynu tokenów.
Połączenie nr 2 jest skonfigurowane z uwierzytelnianiem dla zasobu docelowego.
W zasobie aplikacji logiki Zużycie połączenie #1 jest abstrakcyjne od Ciebie bez żadnych opcji konfiguracji. W typie zasobu aplikacji logiki w warstwie Standardowa masz większą kontrolę nad aplikacją logiki. Domyślnie połączenie #1 jest automatycznie konfigurowane w celu korzystania z tożsamości przypisanej przez system.
Jeśli jednak twój scenariusz wymaga bardziej precyzyjnej kontroli nad uwierzytelnianiem połączeń interfejsu API, opcjonalnie możesz zmienić uwierzytelnianie dla połączenia #1 z domyślnej tożsamości przypisanej przez system do dowolnej tożsamości przypisanej przez użytkownika, która została dodana do aplikacji logiki. To uwierzytelnianie ma zastosowanie do każdego połączenia interfejsu API, dzięki czemu można mieszać tożsamości przypisane przez system i przypisane przez użytkownika między różnymi połączeniami z tym samym zasobem docelowym.
W pliku connections.json aplikacji logiki w warstwie Standardowa, który przechowuje informacje o każdym połączeniu interfejsu API, każda definicja połączenia ma na przykład dwie authentication
sekcje:
"keyvault": {
"api": {
"id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{region}/managedApis/keyvault"
},
"authentication": {
"type": "ManagedServiceIdentity",
},
"connection": {
"id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/<connection-name>"
},
"connectionProperties": {
"authentication": {
"audience": "https://vault.azure.net",
"type": "ManagedServiceIdentity"
}
},
"connectionRuntimeUrl": "<connection-runtime-URL>"
}
Zamapowana na połączenie nr 1 pierwsza
authentication
sekcja to uwierzytelnianie używane do komunikowania się z wewnętrznym magazynem tokenów. W przeszłości ta sekcja była zawsze ustawiona naManagedServiceIdentity
dla aplikacji, która jest wdrażana na platformie Azure i nie miała konfigurowalnych opcji.Zamapowana na połączenie nr 2
authentication
druga sekcja to uwierzytelnianie używane do komunikowania się z zasobem docelowym może się różnić w zależności od typu uwierzytelniania wybranego dla tego połączenia.
Dlaczego warto zmienić uwierzytelnianie magazynu tokenów?
W niektórych scenariuszach możesz współużytkować i używać tego samego połączenia interfejsu API w wielu aplikacjach logiki, ale nie dodawać tożsamości przypisanej przez system dla każdej aplikacji logiki do zasad dostępu zasobu docelowego.
W innych scenariuszach tożsamość przypisana przez system może nie być skonfigurowana w całości w aplikacji logiki, dzięki czemu można całkowicie zmienić uwierzytelnianie na tożsamość przypisaną przez użytkownika i całkowicie wyłączyć tożsamość przypisaną przez system.
Zmienianie uwierzytelniania magazynu tokenów
W Azure Portal otwórz zasób aplikacji logiki w warstwie Standardowa.
W menu zasobów w obszarze Przepływy pracy wybierz pozycję Połączenia.
W okienku Połączenia wybierz pozycję Widok JSON.
W edytorze JSON znajdź sekcję
managedApiConnections
zawierającą połączenia interfejsu API we wszystkich przepływach pracy w zasobie aplikacji logiki.Znajdź połączenie, w którym chcesz dodać tożsamość zarządzaną przypisaną przez użytkownika. Załóżmy na przykład, że przepływ pracy ma połączenie usługi Azure Key Vault:
"keyvault": { "api": { "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{region}/managedApis/keyvault" }, "authentication": { "type": "ManagedServiceIdentity" }, "connection": { "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/<connection-name>" }, "connectionProperties": { "authentication": { "audience": "https://vault.azure.net", "type": "ManagedServiceIdentity" } }, "connectionRuntimeUrl": "<connection-runtime-URL>" }
W definicji połączenia wykonaj następujące kroki:
Znajdź pierwszą
authentication
sekcję. Jeśli żadna właściwość nieidentity
istnieje już w tejauthentication
sekcji, aplikacja logiki niejawnie używa tożsamości przypisanej przez system.identity
Dodaj właściwość przy użyciu przykładu w tym kroku.Ustaw wartość właściwości na identyfikator zasobu dla tożsamości przypisanej przez użytkownika.
"keyvault": { "api": { "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{region}/managedApis/keyvault" }, "authentication": { "type": "ManagedServiceIdentity", // Add "identity" property here "identity": "/subscriptions/{Azure-subscription-ID}/resourcegroups/{resource-group-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity-resource-ID}" }, "connection": { "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/connections/<connection-name>" }, "connectionProperties": { "authentication": { "audience": "https://vault.azure.net", "type": "ManagedServiceIdentity" } }, "connectionRuntimeUrl": "<connection-runtime-URL>" }
W Azure Portal przejdź do zasobu docelowego i przyznaj dostęp do tożsamości zarządzanej przypisanej przez użytkownika na podstawie potrzeb zasobu docelowego.
Na przykład w przypadku usługi Azure Key Vault dodaj tożsamość do zasad dostępu magazynu kluczy. W przypadku Azure Blob Storage przypisz niezbędną rolę dla tożsamości na koncie magazynu.
Wyłączanie tożsamości zarządzanej
Aby przestać używać tożsamości zarządzanej do uwierzytelniania, najpierw usuń dostęp tożsamości do zasobu docelowego. Następnie w zasobie aplikacji logiki wyłącz tożsamość przypisaną przez system lub usuń tożsamość przypisaną przez użytkownika.
Po wyłączeniu tożsamości zarządzanej w zasobie aplikacji logiki usuniesz możliwość, aby ta tożsamość zażądała dostępu do zasobów platformy Azure, do których tożsamość miała dostęp.
Uwaga
Jeśli wyłączysz tożsamość przypisaną przez system, wszystkie połączenia używane przez przepływy pracy w przepływie pracy tej aplikacji logiki nie będą działać w czasie wykonywania, nawet jeśli natychmiast włączysz tożsamość. To zachowanie dzieje się, ponieważ wyłączenie tożsamości powoduje usunięcie identyfikatora obiektu. Za każdym razem, gdy włączysz tożsamość, platforma Azure generuje tożsamość z innym i unikatowym identyfikatorem obiektu. Aby rozwiązać ten problem, należy ponownie utworzyć połączenia, aby używały bieżącego identyfikatora obiektu dla bieżącej tożsamości przypisanej przez system.
Spróbuj uniknąć wyłączenia tożsamości przypisanej przez system, jak najwięcej. Jeśli chcesz usunąć dostęp tożsamości do zasobów platformy Azure, usuń przypisanie roli tożsamości z zasobu docelowego. Jeśli usuniesz zasób aplikacji logiki, platforma Azure automatycznie usunie tożsamość zarządzaną z usługi Azure AD.
Kroki opisane w tej sekcji obejmują użycie szablonu Azure Portal i szablonu usługi Azure Resource Manager (szablon usługi ARM). W przypadku Azure PowerShell, interfejsu wiersza polecenia platformy Azure i interfejsu API REST platformy Azure zapoznaj się z następującą dokumentacją:
Narzędzie | Dokumentacja |
---|---|
Azure PowerShell | 1. Usuń przypisanie roli. 2. Usuń tożsamość przypisaną przez użytkownika. |
Interfejs wiersza polecenia platformy Azure | 1. Usuń przypisanie roli. 2. Usuń tożsamość przypisaną przez użytkownika. |
Interfejs API REST platformy Azure | 1. Usuń przypisanie roli. 2. Usuń tożsamość przypisaną przez użytkownika. |
Wyłączanie tożsamości zarządzanej w Azure Portal
Aby usunąć dostęp do tożsamości zarządzanej, usuń przypisanie roli tożsamości z zasobu docelowego, a następnie wyłącz tożsamość zarządzaną.
Usuwanie przypisania roli
Następujące kroki powodują usunięcie dostępu do zasobu docelowego z tożsamości zarządzanej:
W Azure Portal przejdź do docelowego zasobu platformy Azure, w którym chcesz usunąć dostęp do tożsamości zarządzanej.
Z menu zasobu docelowego wybierz pozycję Kontrola dostępu (zarządzanie dostępem i tożsamościami). Na pasku narzędzi wybierz pozycję Przypisania ról.
Na liście ról wybierz tożsamości zarządzane, które chcesz usunąć. Na pasku narzędzi wybierz pozycję Usuń.
Porada
Jeśli opcja Usuń jest wyłączona, najprawdopodobniej nie masz uprawnień. Aby uzyskać więcej informacji na temat uprawnień, które umożliwiają zarządzanie rolami dla zasobów, zobacz Uprawnienia roli administratora w Azure Active Directory.
Wyłączanie tożsamości zarządzanej w zasobie aplikacji logiki
W Azure Portal otwórz zasób aplikacji logiki.
W menu nawigacji aplikacji logiki w obszarze Ustawienia wybierz pozycję Tożsamość, a następnie wykonaj kroki dotyczące tożsamości:
Wybierz pozycję Przypisane przezsystemOnZapisz>>. Gdy platforma Azure wyświetli monit o potwierdzenie, wybierz pozycję Tak.
Wybierz pozycję Przypisane przez użytkownika i tożsamość zarządzaną, a następnie wybierz pozycję Usuń. Gdy platforma Azure wyświetli monit o potwierdzenie, wybierz pozycję Tak.
Wyłączanie tożsamości zarządzanej w szablonie usługi ARM
Jeśli tożsamość zarządzana aplikacji logiki została utworzona przy użyciu szablonu usługi ARM, ustaw identity
właściwość podrzędną type
obiektu na None
.
"identity": {
"type": "None"
}