Ověřování přístupu a připojení k prostředkům Azure pomocí spravovaných identit v Azure Logic Apps
Platí pro: Azure Logic Apps (Consumption + Standard)
Pokud používáte spravovanou identitu k ověřování přístupu nebo připojení k prostředkům chráněným Microsoft Entra z pracovního postupu aplikace logiky, nemusíte zadávat přihlašovací údaje, tajné kódy ani tokeny Microsoft Entra. V Azure Logic Apps některé operace konektoru podporují použití spravované identity, když potřebujete ověřit přístup k prostředkům chráněným ID Microsoft Entra. Azure tuto identitu spravuje a pomáhá zabezpečit ověřovací informace, protože tyto citlivé informace nemusíte spravovat. Další informace najdete v tématu, které vysvětluje, co jsou spravované identity pro prostředky Azure.
Azure Logic Apps podporuje spravovanou identitu přiřazenou systémem a spravovanou identitu přiřazenou uživatelem. Následující seznam popisuje některé rozdíly mezi těmito typy spravovaných identit:
Prostředek aplikace logiky může povolit a používat pouze jednu jedinečnou identitu přiřazenou systémem.
Prostředek aplikace logiky může sdílet stejnou identitu přiřazenou uživatelem napříč skupinou jiných prostředků aplikace logiky.
Tento průvodce ukazuje, jak provést následující úlohy:
Povolte a nastavte spravovanou identitu přiřazenou systémem pro prostředek aplikace logiky. Tato příručka obsahuje příklad, který ukazuje, jak používat identitu k ověřování.
Vytvoření a nastavení identity přiřazené uživatelem Tato příručka ukazuje, jak vytvořit identitu přiřazenou uživatelem pomocí webu Azure Portal a šablony Azure Resource Manageru (šablony ARM) a použití identity k ověřování. Informace o Azure PowerShellu, Azure CLI a rozhraní Azure REST API najdete v následující dokumentaci:
Nástroj | Dokumentace |
---|---|
Azure PowerShell | Vytvoření identity přiřazené uživatelem |
Azure CLI | Vytvoření identity přiřazené uživatelem |
Azure REST API | Vytvoření identity přiřazené uživatelem |
Využití a standardní aplikace logiky
Na základě typu prostředku aplikace logiky můžete povolit identitu přiřazenou systémem, identitu přiřazenou uživatelem nebo obojí najednou:
Aplikace logiky | Environment | Podpora spravované identity |
---|---|---|
Využití | – Multitenantní Azure Logic Apps – Prostředí integrační služby (ISE) |
– Aplikace logiky může povolit identitu přiřazenou systémem nebo identitu přiřazenou uživatelem. – Spravovanou identitu můžete použít na úrovni prostředků aplikace logiky a na úrovni připojení. – Pokud povolíte identitu přiřazenou uživatelem, aplikace logiky může mít současně pouze jednu identitu přiřazenou uživatelem. |
Standard | – Azure Logic Apps s jedním tenantem – App Service Environment v3 (ASEv3) – Logic Apps s podporou Azure Arc |
– Můžete povolit identitu přiřazenou systémem, která je ve výchozím nastavení povolená, i identitu přiřazenou uživatelem současně. – Spravovanou identitu můžete použít na úrovni prostředků aplikace logiky a na úrovni připojení. – Pokud povolíte identitu přiřazenou uživatelem, prostředek aplikace logiky může mít současně více identit přiřazených uživatelem. |
Informace o omezeních spravovaných identit v Azure Logic Apps najdete v tématu Omezení spravovaných identit pro aplikace logiky. Další informace o typech prostředků a prostředích aplikací logiky Consumption a Standard najdete v následující dokumentaci:
Kde můžete použít spravovanou identitu
V Azure Logic Apps můžou pro ověřování používat spravovanou identitu jenom konkrétní integrované a spravované operace konektoru, které podporují OAuth s ID Microsoft Entra. Následující tabulky poskytují pouze výběr vzorku. Úplný seznam najdete v tématu Typy ověřování pro triggery a akce, které podporují ověřování a služby Azure, které podporují ověřování Microsoft Entra s využitím spravovaných identit.
V případě pracovního postupu aplikace logiky Consumption uvádí následující tabulka konektory, které podporují ověřování spravovaných identit:
Typ konektoru | Podporované konektory |
---|---|
Integrovaný | – Azure API Management – Aplikace Azure služby – Azure Functions – HTTP - HTTP + Webhook Poznámka: Operace HTTP můžou ověřovat připojení k účtům Azure Storage za bránami Azure Firewall pomocí identity přiřazené systémem. Nepodporují ale spravovanou identitu přiřazenou uživatelem pro ověřování stejných připojení. |
Spravovaná | – služba Aplikace Azure – Azure Automation – Azure Blob Storage – Instance kontejneru Azure – Azure Cosmos DB – Azure Data Explorer – Azure Data Factory – Azure Data Lake – Azure Event Grid – Azure Event Hubs – Azure IoT Central V2 – Azure IoT Central V3 – Azure Key Vault – Azure Log Analytics – Fronty Azure – Azure Resource Manager – Azure Service Bus – Azure Sentinel – Azure Table Storage – Virtuální počítač Azure – HTTP s Microsoft Entra ID – SQL Server |
Požadavky
Účet a předplatné Azure. Pokud předplatné nemáte, zaregistrujte si bezplatný účet Azure. Spravovaná identita i cílový prostředek Azure, ke které potřebujete přístup, musí používat stejné předplatné Azure.
Cílový prostředek Azure, ke kterému chcete získat přístup. V tomto prostředku přidáte potřebnou roli pro spravovanou identitu pro přístup k tomuto prostředku jménem vaší aplikace logiky nebo připojení. Pokud chcete přidat roli ke spravované identitě, potřebujete oprávnění správce Microsoft Entra, která můžou přiřadit role identitám v odpovídajícím tenantovi Microsoft Entra.
Prostředek aplikace logiky a pracovní postup, ve kterém chcete použít trigger nebo akce, které podporují spravované identity.
Povolení identity přiřazené systémem na webu Azure Portal
Na webu Azure Portal otevřete prostředek aplikace logiky.
V nabídce aplikace logiky v části Nastavení vyberte Identita.
Na stránce Identita v části Systém přiřazený vyberte Při>uložení. Když Vás Azure vyzve k potvrzení, vyberte Ano.
Poznámka:
Pokud se zobrazí chyba, že můžete mít jenom jednu spravovanou identitu, prostředek aplikace logiky je už přidružený k identitě přiřazené uživatelem. Než budete moct přidat identitu přiřazenou systémem, musíte nejprve odebrat identitu přiřazenou uživatelem z prostředku aplikace logiky.
Prostředek aplikace logiky teď může používat identitu přiřazenou systémem. Tato identita je zaregistrovaná s ID Microsoft Entra a je reprezentována ID objektu.
Vlastnost Hodnota Popis ID objektu (objektu zabezpečení) <identity-resource-ID> Globálně jedinečný identifikátor (GUID), který představuje identitu přiřazenou systémem pro vaši aplikaci logiky v tenantovi Microsoft Entra. Teď postupujte podle kroků, které této identitě poskytují přístup k prostředku dál v této příručce.
Povolení identity přiřazené systémem v šabloně ARM
K automatizaci vytváření a nasazování prostředků aplikace logiky můžete použít šablonu ARM. Pokud chcete v šabloně povolit identitu přiřazenou systémem pro prostředek aplikace logiky, přidejte identity
objekt a podřízenou type
vlastnost do definice prostředku aplikace logiky v šabloně, například:
{
"apiVersion": "2016-06-01",
"type": "Microsoft.logic/workflows",
"name": "[variables('logicappName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "SystemAssigned"
},
"properties": {},
<...>
}
Když Azure vytvoří definici prostředku aplikace logiky, identity
objekt získá tyto další vlastnosti:
"identity": {
"type": "SystemAssigned",
"principalId": "<principal-ID>",
"tenantId": "<Azure-AD-tenant-ID>"
}
Vlastnost (JSON) | Hodnota | Popis |
---|---|---|
principalId |
<principal-ID> | Globálně jedinečný identifikátor (GUID) instančního objektu pro spravovanou identitu, která představuje vaši aplikaci logiky v tenantovi Microsoft Entra. Tento identifikátor GUID se někdy zobrazuje jako "ID objektu" nebo objectID . |
tenantId |
<Azure-AD-tenant-ID> | Globálně jedinečný identifikátor (GUID), který představuje tenanta Microsoft Entra, kde je aplikace logiky nyní členem. V tenantovi Microsoft Entra má instanční objekt stejný název jako instance aplikace logiky. |
Vytvoření identity přiřazené uživatelem na webu Azure Portal
Než budete moct povolit identitu přiřazenou uživatelem pro prostředek aplikace logiky Consumption nebo prostředek aplikace logiky Standard, musíte tuto identitu vytvořit jako samostatný prostředek Azure.
Do vyhledávacího pole webu Azure Portal zadejte spravované identity a vyberte Spravované identity.
Na stránce Spravované identity vyberte Vytvořit.
Zadejte informace o spravované identitě a vyberte Zkontrolovat a vytvořit, například:
Vlastnost Požaduje se Hodnota Popis Předplatné Ano <Azure-subscription-name> Název předplatného Azure Skupina prostředků Ano <Azure-resource-group-name> Název skupiny prostředků Azure Vytvořte novou skupinu nebo vyberte existující skupinu. Tento příklad vytvoří novou skupinu s názvem fabrikam-managed-identityies-RG. Oblast Ano <Oblast Azure> Oblast Azure, kam se mají ukládat informace o vašem prostředku. V tomto příkladu se používá USA – západ. Název Ano <user-assigned-identity-name> Jméno, kterým chcete přiřadit identitu přiřazenou uživatelem. V tomto příkladu se používá Fabrikam-user-assigned-identity. Jakmile Azure ověří informace, Azure vytvoří vaši spravovanou identitu. Teď můžete do prostředku aplikace logiky přidat identitu přiřazenou uživatelem.
Přidání identity přiřazené uživatelem do aplikace logiky na webu Azure Portal
Na webu Azure Portal otevřete prostředek aplikace logiky.
V nabídce aplikace logiky v části Nastavení vyberte Identita.
Na stránce Identita vyberte Přidat přiřazeného>uživatelem.
V podokně Přidat spravovanou identitu přiřazenou uživatelem postupujte takto:
V seznamu Předplatné vyberte své předplatné Azure.
V seznamu se všemi spravovanými identitami ve vašem předplatném vyberte požadovanou identitu přiřazenou uživatelem. Pokud chcete seznam filtrovat, zadejte do vyhledávacího pole spravované identity přiřazené uživatelem název identity nebo skupiny prostředků.
Až budete hotovi, vyberte Přidat.
Poznámka:
Pokud se zobrazí chyba, že můžete mít jenom jednu spravovanou identitu, je vaše aplikace logiky už přidružená k identitě přiřazené systémem. Než budete moct přidat identitu přiřazenou uživatelem, musíte nejprve zakázat identitu přiřazenou systémem.
Vaše aplikace logiky je teď přidružená ke spravované identitě přiřazené uživatelem.
Teď postupujte podle kroků, které této identitě poskytují přístup k prostředku dál v této příručce.
Vytvoření identity přiřazené uživatelem v šabloně ARM
K automatizaci vytváření a nasazování prostředků aplikace logiky můžete použít šablonu ARM. Tyto šablony podporují identity přiřazené uživatelem pro ověřování.
V části šablony vyžaduje definice prostředku aplikace logiky resources
tyto položky:
Objekt
identity
s vlastností nastavenoutype
naUserAssigned
Podřízený
userAssignedIdentities
objekt, který určuje prostředek přiřazený uživatelem a název
Tento příklad ukazuje prostředek aplikace logiky Consumption a definici pracovního postupu pro požadavek HTTP PUT s neparametrizovaným identity
objektem. Odpověď na požadavek PUT a následná operace GET obsahuje také tento identity
objekt:
{
"$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": {}
}
Pokud vaše šablona obsahuje také definici prostředku spravované identity, můžete objekt parametrizovat identity
. Následující příklad ukazuje, jak podřízený userAssignedIdentities
objekt odkazuje na proměnnou userAssignedIdentityName
, kterou definujete v oddílu variables
šablony. Tato proměnná odkazuje na ID prostředku pro vaši identitu přiřazenou uživatelem.
{
"$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": {}
}
]
}
Udělení přístupu k prostředkům identitě
Než budete moct použít spravovanou identitu aplikace logiky k ověřování, musíte pro identitu nastavit přístup k prostředku Azure, ve kterém chcete identitu použít. Způsob nastavení přístupu se liší podle prostředku, ke kterému má identita přístup.
Poznámka:
Pokud má spravovaná identita přístup k prostředku Azure ve stejném předplatném, může identita přistupovat pouze k danému prostředku. V některých triggerech a akcích, které podporují spravované identity, ale musíte nejprve vybrat skupinu prostředků Azure, která obsahuje cílový prostředek. Pokud identita nemá přístup na úrovni skupiny prostředků, nejsou uvedené žádné prostředky v této skupině, i když mají přístup k cílovému prostředku.
Pokud chcete toto chování zpracovat, musíte také udělit identitě přístup ke skupině prostředků, nejen k prostředku. Podobně platí, že pokud před výběrem cílového prostředku musíte vybrat své předplatné, musíte identitě udělit přístup k předplatnému.
V některých případech může být potřeba, aby identita získala přístup k přidruženému prostředku. Předpokládejme například, že máte spravovanou identitu pro aplikaci logiky, která potřebuje přístup k aktualizaci nastavení aplikace pro stejnou aplikaci logiky z pracovního postupu. Tuto identitu musíte udělit přístup k přidružené aplikaci logiky.
Pokud například chcete získat přístup k účtu azure Blob Storage se spravovanou identitou, musíte nastavit přístup pomocí řízení přístupu na základě role v Azure (Azure RBAC) a přiřadit příslušnou roli pro tuto identitu k účtu úložiště. Kroky v této části popisují, jak tuto úlohu dokončit pomocí webu Azure Portal a šablony Azure Resource Manageru (šablona ARM). Informace o Azure PowerShellu, Azure CLI a rozhraní Azure REST API najdete v následující dokumentaci:
Nástroj | Dokumentace |
---|---|
Azure PowerShell | Přidání přiřazení role |
Azure CLI | Přidání přiřazení role |
Azure REST API | Přidání přiřazení role |
Pokud ale chcete získat přístup k trezoru klíčů Azure se spravovanou identitou, musíte vytvořit zásadu přístupu pro tuto identitu ve vašem trezoru klíčů a přiřadit příslušná oprávnění pro tuto identitu v daném trezoru klíčů. Následující kroky v této části popisují, jak tuto úlohu dokončit pomocí webu Azure Portal. Šablony Resource Manageru, PowerShell a Azure CLI najdete v následující dokumentaci:
Nástroj | Dokumentace |
---|---|
Šablona ARM (Azure Resource Manager) | Definice prostředku zásad přístupu ke službě Key Vault |
Azure PowerShell | Přiřazení zásad přístupu ke službě Key Vault |
Azure CLI | Přiřazení zásad přístupu ke službě Key Vault |
Přiřazení přístupu na základě role spravované identity na webu Azure Portal
Pokud chcete použít spravovanou identitu pro ověřování, některé prostředky Azure, jako jsou účty úložiště Azure, vyžadují, abyste tuto identitu přiřadili roli, která má příslušná oprávnění k cílovému prostředku. Jiné prostředky Azure, jako jsou trezory klíčů Azure, vyžadují, abyste vytvořili zásadu přístupu, která má příslušná oprávnění k cílovému prostředku pro danou identitu.
Na webu Azure Portal otevřete prostředek, ve kterém chcete identitu použít.
V nabídce prostředků vyberte Řízení přístupu (IAM)>Přidat>přiřazení role.
Poznámka:
Pokud je možnost Přidat přiřazení role zakázaná, nemáte oprávnění k přiřazování rolí. Další informace najdete v tématu Předdefinované role Microsoft Entra.
Teď přiřaďte spravovanou identitu potřebnou roli. Na kartě Role přiřaďte roli, která vaší identitě poskytne požadovaný přístup k aktuálnímu prostředku.
V tomto příkladu přiřaďte roli s názvem Přispěvatel dat objektů blob služby Storage, která zahrnuje přístup k zápisu pro objekty blob v kontejneru Azure Storage. Další informace o konkrétních rolích kontejneru úložiště najdete v tématu Role, které mají přístup k objektům blob v kontejneru Azure Storage.
Dále zvolte spravovanou identitu, ve které chcete roli přiřadit. V části Přiřadit přístup vyberte Přidat členy spravované identity>.
Na základě typu spravované identity vyberte nebo zadejte následující hodnoty:
Typ Instance služby Azure Předplatné Člen Přiřazené systémem Aplikace logiky <Azure-subscription-name> <název_vaší_aplikace_logiky> Přiřazené uživatelem Nelze použít <Azure-subscription-name> <your-user-assigned-identity-name> Další informace o přiřazování rolí najdete v tématu Přiřazení rolí pomocí webu Azure Portal.
Po dokončení můžete pomocí identity ověřit přístup pro triggery a akce, které podporují spravované identity.
Další obecné informace o této úloze najdete v tématu Přiřazení přístupu spravované identity k jinému prostředku pomocí Azure RBAC.
Vytvoření zásad přístupu na webu Azure Portal
Pokud chcete použít spravovanou identitu pro ověřování, některé prostředky Azure, jako jsou trezory klíčů Azure, vyžadují, abyste vytvořili zásadu přístupu, která má příslušná oprávnění k cílovému prostředku pro danou identitu. Jiné prostředky Azure, jako jsou účty úložiště Azure, vyžadují, abyste tuto identitu přiřadili k roli, která má příslušná oprávnění k cílovému prostředku.
Na webu Azure Portal otevřete cílový prostředek, ve kterém chcete identitu použít. V tomto příkladu se jako cílový prostředek používá trezor klíčů Azure.
V nabídce prostředku vyberte Vytvořit zásady>přístupu, které otevře podokno Vytvořit zásadu přístupu.
Poznámka:
Pokud prostředek nemá možnost Zásady přístupu, zkuste místo toho přiřadit přiřazení role.
Na kartě Oprávnění vyberte požadovaná oprávnění, která identita potřebuje pro přístup k cílovému prostředku.
Pokud například chcete použít identitu s operací výpisu tajných kódů spravovaného konektoru služby Azure Key Vault, potřebuje identita oprávnění Seznam. Ve sloupci Oprávnění tajných kódů tedy vyberte Seznam.
Až budete připraveni, vyberte Další. Na kartě Objekt zabezpečení vyhledejte a vyberte spravovanou identitu, což je identita přiřazená uživatelem v tomto příkladu.
Přeskočte volitelný krok Aplikace , vyberte Další a dokončete vytváření zásad přístupu.
Další část popisuje použití spravované identity k ověření přístupu pro trigger nebo akci. Příklad pokračuje kroky z předchozí části, kde nastavíte přístup pro spravovanou identitu pomocí RBAC a jako příklad nepoužíváte Azure Key Vault. Obecné kroky pro použití spravované identity pro ověřování jsou ale stejné.
Ověřování přístupu pomocí spravované identity
Po povolení spravované identity pro prostředek aplikace logiky a udělení přístupu k cílovému prostředku nebo entitě můžete tuto identitu použít v triggerech a akcích, které podporují spravované identity.
Důležité
Pokud máte funkci Azure, ve které chcete použít identitu přiřazenou systémem, nejprve povolte ověřování pro Azure Functions.
Tyto kroky ukazují, jak používat spravovanou identitu s triggerem nebo akcí prostřednictvím webu Azure Portal. Pokud chcete určit spravovanou identitu v podkladové definici JSON triggeru nebo akce, přečtěte si téma Ověřování spravované identity.
Na webu Azure Portal otevřete prostředek aplikace logiky.
Pokud jste to ještě neudělali, přidejte trigger nebo akci, která podporuje spravované identity.
Poznámka:
Ne všechny operace konektoru podporují přidání typu ověřování. Další informace najdete v tématu Typy ověřování pro triggery a akce, které podporují ověřování.
Na přidaném triggeru nebo akci postupujte takto:
Integrované operace konektoru, které podporují ověřování spravovaných identit
V seznamu Přidat nový parametr přidejte vlastnost Ověřování, pokud se vlastnost ještě nezobrazuje.
V seznamu Typ ověřování vyberte Spravovaná identita.
Další informace najdete v tématu Příklad: Ověření integrované aktivační události nebo akce pomocí spravované identity.
Operace spravovaného konektoru, které podporují ověřování spravovaných identit
Na stránce výběru tenanta vyberte Připojení se spravovanou identitou, například:
Na další stránce zadejte název Připojení ionu, který se má pro připojení použít.
Jako typ ověřování zvolte jednu z následujících možností na základě spravovaného konektoru:
Jedno ověřování: Tyto konektory podporují pouze jeden typ ověřování. V seznamu spravované identity vyberte aktuálně povolenou spravovanou identitu, pokud ještě není vybraná, a pak vyberte Vytvořit, například:
Vícenásobné ověřování: Tyto konektory zobrazují více typů ověřování, ale přesto můžete vybrat pouze jeden typ. V seznamu Typ ověřování vyberte Možnost Vytvořit spravovanou identitu>Logic Apps, například:
Další informace najdete v tématu Příklad: Ověření triggeru spravovaného konektoru nebo akce se spravovanou identitou.
Příklad: Ověření integrované aktivační události nebo akce pomocí spravované identity
Integrovaná aktivační událost HTTP nebo akce může používat identitu přiřazenou systémem, kterou povolíte u prostředku aplikace logiky. Obecně platí, že trigger nebo akce HTTP používá následující vlastnosti k určení prostředku nebo entity, ke které chcete získat přístup:
Vlastnost | Požadováno | Popis |
---|---|---|
Metoda | Ano | Metoda HTTP, kterou používá operace, kterou chcete spustit |
Identifikátor URI | Ano | Adresa URL koncového bodu pro přístup k cílovému prostředku nebo entitě Azure. Syntaxe identifikátoru URI obvykle obsahuje ID prostředku pro prostředek nebo službu Azure. |
Záhlaví | No | Všechny hodnoty záhlaví, které potřebujete nebo chcete zahrnout do odchozího požadavku, například typ obsahu |
Dotazy | No | Všechny parametry dotazu, které potřebujete nebo chcete zahrnout do požadavku. Například parametry dotazu pro konkrétní operaci nebo verzi rozhraní API operace, kterou chcete spustit. |
Authentication | Ano | Typ ověřování, který se má použít k ověřování přístupu k cílovému prostředku nebo entitě |
Jako konkrétní příklad předpokládejme, že chcete spustit operaci Snapshot Blob na objektu blob v účtu služby Azure Storage, kde jste dříve nastavili přístup pro vaši identitu. Konektor Azure Blob Storage ale v současné době tuto operaci nenabízí. Místo toho můžete tuto operaci spustit pomocí akce HTTP nebo jiné operace rozhraní REST API služby Blob Service.
Důležité
Pokud chcete získat přístup k účtům úložiště Azure za branami firewall pomocí konektoru Azure Blob a spravovaných identit, ujistěte se, že jste také nastavili účet úložiště s výjimkou, která umožňuje přístup důvěryhodnými služby Microsoft.
Pokud chcete spustit operaci Objekt blob snímku, akce HTTP určuje tyto vlastnosti:
Vlastnost | Požaduje se | Příklad hodnoty | Popis |
---|---|---|---|
Metoda | Ano | PUT |
Metoda HTTP, kterou používá operace Snapshot Blob |
Identifikátor URI | Ano | https://<storage-account-name>/<folder-name>/{name} |
ID prostředku pro soubor Azure Blob Storage v globálním (veřejném) prostředí Azure, které používá tuto syntaxi |
Záhlaví | Pro Azure Storage | x-ms-blob-type = BlockBlob
|
Hodnoty , x-ms-version a x-ms-date hlavičky x-ms-blob-type jsou vyžadovány pro operace Azure Storage. Důležité: V odchozích triggerech HTTP a požadavcích na akce pro Azure Storage vyžaduje hlavička Další informace najdete v následující dokumentaci: - Hlavičky požadavku – Objekt blob snímku |
Dotazy | Pouze pro operaci Vytvoření snímku objektu blob | comp = snapshot |
Název a hodnota parametru dotazu pro operaci. |
Následující příklad ukazuje ukázkovou akci HTTP se všemi dříve popsanými hodnotami vlastností, které se mají použít pro operaci Snapshot Blob:
Po přidání akce HTTP přidejte vlastnost Ověřování do akce HTTP. V seznamu Přidat nový parametr vyberte Ověřování.
Poznámka:
Ne všechny triggery a akce podporují přidání typu ověřování. Další informace najdete v tématu Typy ověřování pro triggery a akce, které podporují ověřování.
V seznamu Typ ověřování vyberte Spravovaná identita.
V seznamu spravovaných identit vyberte z dostupných možností na základě vašeho scénáře.
Pokud nastavíte identitu přiřazenou systémem, vyberte spravovanou identitu přiřazenou systémem, pokud ještě není vybraná.
Pokud nastavíte identitu přiřazenou uživatelem, vyberte tuto identitu, pokud ještě není vybraná.
Tento příklad pokračuje se spravovanou identitou přiřazenou systémem.
U některých triggerů a akcí se také zobrazí vlastnost Cílová skupina, abyste nastavili ID cílového prostředku. Nastavte vlastnost Cílová skupina na ID prostředku cílového prostředku nebo služby. V opačném případě vlastnost Cílová skupina ve výchozím nastavení používá
https://management.azure.com/
ID prostředku, což je ID prostředku pro Azure Resource Manager.Pokud například chcete ověřit přístup k prostředku služby Key Vault v globálním cloudu Azure, musíte vlastnost Audience nastavit na přesně následující ID prostředku:
https://vault.azure.net
Toto konkrétní ID prostředku nemá koncové lomítka. Ve skutečnosti, včetně koncové lomítko může způsobit400 Bad Request
chybu nebo401 Unauthorized
chybu.Důležité
Ujistěte se, že ID cílového prostředku přesně odpovídá hodnotě, kterou očekává MICROSOFT Entra ID, včetně všech požadovaných koncových lomítek. NAPŘÍKLAD ID prostředku pro všechny účty Azure Blob Storage vyžaduje koncové lomítko. ID prostředku pro konkrétní účet úložiště ale nevyžaduje koncové lomítko. Zkontrolujte ID prostředků pro služby Azure, které podporují ID Microsoft Entra.
Tento příklad nastaví vlastnost Audience tak
https://storage.azure.com/
, aby přístupové tokeny použité k ověřování byly platné pro všechny účty úložiště. Můžete však také zadat adresu URL kořenové služby prohttps://<your-storage-account>.blob.core.windows.net
konkrétní účet úložiště.Další informace o autorizaci přístupu pomocí MICROSOFT Entra ID pro Azure Storage najdete v následující dokumentaci:
Pokračujte v vytváření pracovního postupu požadovaným způsobem.
Příklad: Ověření triggeru spravovaného konektoru nebo akce se spravovanou identitou
Spravovaný konektor Azure Resource Manageru má akci s názvem Číst prostředek, který může používat spravovanou identitu, kterou povolíte pro prostředek aplikace logiky. Tento příklad ukazuje, jak používat spravovanou identitu přiřazenou systémem.
Po přidání akce do pracovního postupu a výběru tenanta Microsoft Entra vyberte Připojení se spravovanou identitou.
Na stránce s názvem připojení zadejte název připojení a vyberte spravovanou identitu, kterou chcete použít.
Akce Azure Resource Manageru je akce s jedním ověřováním, takže v poli s informacemi o připojení se zobrazí seznam spravovaných identit , který automaticky vybere spravovanou identitu, která je aktuálně povolená u prostředku aplikace logiky. Pokud jste povolili spravovanou identitu přiřazenou systémem, seznam spravovaných identit vybere spravovanou identitu přiřazenou systémem. Pokud jste místo toho povolili spravovanou identitu přiřazenou uživatelem, seznam tuto identitu vybere.
Pokud používáte trigger nebo akci s více ověřováními, jako je Azure Blob Storage, zobrazí se v poli s informacemi o připojení seznam typů ověřování, který obsahuje možnost Spravovaná identita Logic Apps mimo jiné typy ověřování.
V tomto příkladu je jediná dostupná spravovaná identita přiřazená systémem.
Poznámka:
Pokud spravovaná identita není povolená při pokusu o vytvoření připojení, změně připojení nebo byla odebrána, pokud spravované připojení s povolenou identitou stále existuje, zobrazí se chyba, že musíte identitu povolit a udělit přístup k cílovému prostředku.
Až budete připraveni, vyberte Vytvořit.
Jakmile návrhář úspěšně vytvoří připojení, může návrhář načíst všechny dynamické hodnoty, obsah nebo schéma pomocí ověřování spravované identity.
Pokračujte v vytváření pracovního postupu požadovaným způsobem.
Definice prostředku aplikace logiky a připojení, která používají spravovanou identitu
Připojení, které povoluje a používá spravovanou identitu, je speciální typ připojení, který funguje jenom se spravovanou identitou. Připojení za běhu používá spravovanou identitu, která je povolená u prostředku aplikace logiky. Za běhu služba Azure Logic Apps zkontroluje, jestli jsou v pracovním postupu aplikace logiky nastavené nějaké triggery a akce spravovaného konektoru a jestli jsou všechna požadovaná oprávnění nastavená tak, aby používala spravovanou identitu pro přístup k cílovým prostředkům určeným triggerem a akcemi. V případě úspěchu služba Azure Logic Apps načte token Microsoft Entra přidružený ke spravované identitě a použije tuto identitu k ověření přístupu k cílovému prostředku a provedení nakonfigurované operace v triggeru a akcích.
V prostředku aplikace logiky Consumption se konfigurace připojení uloží do objektu definice parameters
prostředku aplikace logiky, který obsahuje objekt, který obsahuje $connections
ukazatele na ID prostředku připojení spolu s ID prostředku identity, pokud je povolená identita přiřazená uživatelem.
Tento příklad ukazuje, jak konfigurace vypadá, když aplikace logiky povolí spravovanou identitu přiřazenou systémem:
"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}"
}
}
}
}
Tento příklad ukazuje, jak konfigurace vypadá, když aplikace logiky povolí spravovanou identitu přiřazenou uživatelem:
"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}"
}
}
}
}
Šablona ARM pro připojení rozhraní API a spravované identity
Pokud k automatizaci nasazení použijete šablonu ARM a váš pracovní postup obsahuje připojení rozhraní API, které je vytvořené spravovaným konektorem, jako je Office 365 Outlook, Azure Key Vault atd., který používá spravovanou identitu, musíte provést další krok.
V šabloně ARM se základní definice prostředku konektoru liší podle toho, jestli máte aplikaci logiky Consumption nebo Standard a jestli konektor zobrazuje možnosti s jedním ověřováním nebo více ověřováním.
Následující příklady platí pro prostředky aplikace logiky Consumption a ukazují, jak se definice prostředku základního konektoru liší mezi konektorem s jedním ověřováním, jako je Azure Automation, a konektorem pro více ověřování, jako je Azure Blob Storage.
Jedno ověřování
Tento příklad ukazuje definici základního prostředku připojení pro akci Azure Automation v aplikaci logiky Consumption, která používá spravovanou identitu, ve které definice obsahuje atributy:
- Vlastnost je nastavená
kind
naV1
aplikaci logiky Consumption. - Vlastnost
parameterValueType
je nastavena na hodnotuAlternative
.
{
"type": "Microsoft.Web/connections",
"apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
"name": "[variables('connections_azureautomation_name')]",
"location": "[parameters('location')]",
"kind": "V1",
"properties": {
"alternativeParameterValues": {},
"api": {
"id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureautomation')]"
},
"authenticatedUser": {},
"connectionState": "Enabled",
"customParameterValues": {},
"displayName": "[variables('connections_azureautomation_name')]",
"parameterValueSet": {},
"parameterValueType": "Alternative"
}
},
Více ověřování
Tento příklad ukazuje definici základního prostředku připojení pro akci služby Azure Blob Storage v aplikaci logiky Consumption, která používá spravovanou identitu, ve které definice obsahuje následující atributy:
- Vlastnost je nastavená
kind
naV1
aplikaci logiky Consumption. - Objekt
parameterValueSet
obsahuje vlastnost nastavenouname
namanagedIdentityAuth
prázdnou vlastnost avalues
vlastnost, která je nastavená na prázdný objekt.
{
"type": "Microsoft.Web/connections",
"apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
"name": "[variables('connections_azureblob_name')]",
"location": "[parameters('location')]",
"kind": "V1",
"properties": {
"alternativeParameterValues":{},
"api": {
"id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureblob')]"
},
"authenticatedUser": {},
"connectionState": "Enabled",
"customParameterValues": {},
"displayName": "[variables('connections_azureblob_name')]",
"parameterValueSet":{
"name": "managedIdentityAuth",
"values": {}
},
"parameterValueType": "Alternative"
}
}
Nastavení pokročilé kontroly nad ověřováním připojení rozhraní API
Pokud váš pracovní postup používá připojení rozhraní API vytvořené spravovaným konektorem , jako je Office 365 Outlook, Azure Key Vault atd., služba Azure Logic Apps komunikuje s cílovým prostředkem, jako je váš e-mailový účet, trezor klíčů atd., pomocí dvou připojení:
Připojení ion #1 je nastaveno s ověřováním pro interní úložiště tokenů.
Připojení ion #2 je nastaveno s ověřováním pro cílový prostředek.
V prostředku aplikace logiky Consumption se připojení č. 1 abstrahuje bez jakýchkoli možností konfigurace. Ve standardním typu prostředku aplikace logiky máte větší kontrolu nad aplikací logiky. Ve výchozím nastavení je připojení č. 1 automaticky nastaveno tak, aby používalo identitu přiřazenou systémem.
Pokud ale váš scénář vyžaduje přesnou kontrolu nad ověřováním připojení rozhraní API, můžete volitelně změnit ověřování pro připojení č. 1 z výchozí identity přiřazené systémem na libovolnou identitu přiřazenou uživatelem, kterou jste přidali do aplikace logiky. Toto ověřování platí pro každé připojení rozhraní API, takže můžete kombinovat identity přiřazené systémem a uživatelem napříč různými připojeními ke stejnému cílovému prostředku.
V souboru connections.json standardní aplikace logiky, který ukládá informace o každém připojení rozhraní API, má každá definice připojení dvě authentication
části, například:
"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>"
}
První
authentication
oddíl se mapuje na připojení č. 1. Tato část popisuje ověřování používané pro komunikaci s interním úložištěm tokenů. V minulosti byla tato část vždy nastavená naManagedServiceIdentity
aplikaci, která se nasazuje do Azure, a neměla žádné konfigurovatelné možnosti.Druhý
authentication
oddíl se mapuje na připojení č. 2. Tato část popisuje ověřování používané pro komunikaci s cílovým prostředkem se může lišit v závislosti na typu ověřování, který pro toto připojení vyberete.
Proč změnit ověřování úložiště tokenů?
V některých scénářích můžete chtít sdílet a používat stejné připojení rozhraní API napříč několika aplikacemi logiky, ale nepřidávejte identitu přiřazenou systémem pro každou aplikaci logiky do zásad přístupu cílového prostředku.
V jiných scénářích možná nebudete chtít mít identitu přiřazenou systémem nastavenou v aplikaci logiky úplně, takže můžete změnit ověřování na identitu přiřazenou uživatelem a úplně zakázat identitu přiřazenou systémem.
Změna ověřování úložiště tokenů
Na webu Azure Portal otevřete prostředek aplikace logiky Standard.
V nabídce prostředků v části Pracovní postupy vyberte Připojení ions.
V podokně Připojení iony vyberte Zobrazení JSON.
V editoru
managedApiConnections
JSON vyhledejte část, která obsahuje připojení rozhraní API napříč všemi pracovními postupy v prostředku aplikace logiky.Vyhledejte připojení, ke kterému chcete přidat spravovanou identitu přiřazenou uživatelem. Předpokládejme například, že váš pracovní postup má připojení ke službě 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>" }
V definici připojení proveďte následující kroky:
Najděte první
authentication
oddíl. Pokud v tétoauthentication
části ještě žádnáidentity
vlastnost neexistuje, aplikace logiky implicitně používá identitu přiřazenou systémem.identity
Přidejte vlastnost pomocí příkladu v tomto kroku.Nastavte hodnotu vlastnosti na ID prostředku pro identitu přiřazenou uživatelem.
"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>" }
Na webu Azure Portal přejděte k cílovému prostředku a na základě potřeb cílového prostředku udělte přístup ke spravované identitě přiřazené uživatelem.
Například pro Azure Key Vault přidejte identitu do zásad přístupu trezoru klíčů. Pro Azure Blob Storage přiřaďte k účtu úložiště potřebnou roli pro identitu.
Zákaz spravované identity
Pokud chcete přestat používat spravovanou identitu pro ověřování, nejprve odeberte přístup identity k cílovému prostředku. Dále v prostředku aplikace logiky vypněte identitu přiřazenou systémem nebo odeberte identitu přiřazenou uživatelem.
Když ve svém prostředku aplikace logiky zakážete spravovanou identitu, odeberete pro tuto identitu možnost požádat o přístup k prostředkům Azure, ke kterým měla identita přístup.
Poznámka:
Pokud zakážete identitu přiřazenou systémem, nebudou za běhu fungovat všechna připojení používaná pracovními postupy aplikace logiky, a to ani v případě, že identitu okamžitě povolíte znovu. K tomuto chování dochází, protože zakázání identity odstraní ID objektu. Pokaždé, když identitu povolíte, Azure vygeneruje identitu s jiným a jedinečným ID objektu. Chcete-li tento problém vyřešit, musíte znovu vytvořit připojení, aby používaly aktuální ID objektu pro aktuální identitu přiřazenou systémem.
Snažte se vyhnout zakázání identity přiřazené systémem co nejvíce. Pokud chcete odebrat přístup identity k prostředkům Azure, odeberte přiřazení role identity z cílového prostředku. Pokud odstraníte prostředek aplikace logiky, Azure automaticky odebere spravovanou identitu z ID Microsoft Entra.
Postup v této části popisuje použití webu Azure Portal a šablony Azure Resource Manageru (šablona ARM). Informace o Azure PowerShellu, Azure CLI a rozhraní Azure REST API najdete v následující dokumentaci:
Nástroj | Dokumentace |
---|---|
Azure PowerShell | 1. Odeberte přiřazení role. 2. Odstraňte identitu přiřazenou uživatelem. |
Azure CLI | 1. Odeberte přiřazení role. 2. Odstraňte identitu přiřazenou uživatelem. |
Azure REST API | 1. Odeberte přiřazení role. 2. Odstraňte identitu přiřazenou uživatelem. |
Zakázání spravované identity na webu Azure Portal
Pokud chcete odebrat přístup ke spravované identitě, odeberte přiřazení role identity z cílového prostředku a potom spravovanou identitu zakažte.
Odebrání přiřazení role
Následující postup odebere přístup k cílovému prostředku ze spravované identity:
Na webu Azure Portal přejděte do cílového prostředku Azure, ve kterém chcete odebrat přístup ke spravované identitě.
V nabídce cílového prostředku vyberte Řízení přístupu (IAM). Pod panelem nástrojů vyberte Přiřazení rolí.
V seznamu rolí vyberte spravované identity, které chcete odebrat. Na panelu nástrojů vyberte Odebrat.
Tip
Pokud je možnost Odebrat zakázaná, pravděpodobně nemáte oprávnění. Další informace o oprávněních, která umožňují spravovat role pro prostředky, naleznete v tématu Správa istrator oprávnění role v Microsoft Entra ID.
Zakázání spravované identity u prostředku aplikace logiky
Na webu Azure Portal otevřete prostředek aplikace logiky.
V navigační nabídce aplikace logiky v části Nastavení vyberte Identita a pak postupujte podle kroků pro vaši identitu:
Vyberte Systém přiřazený>při>uložení. Když Vás Azure vyzve k potvrzení, vyberte Ano.
Vyberte Přiřazený uživatel a spravovanou identitu a pak vyberte Odebrat. Když Vás Azure vyzve k potvrzení, vyberte Ano.
Zakázání spravované identity v šabloně ARM
Pokud jste vytvořili spravovanou identitu aplikace logiky pomocí šablony ARM, nastavte podřízenou vlastnost objektu identity
type
na None
.
"identity": {
"type": "None"
}