Ověřování přístupu k prostředkům Azure pomocí spravovaných identit v Azure Logic Apps
Platí pro: Azure Logic Apps (Consumption + Standard)
V pracovních postupech aplikací logiky některé triggery a akce podporují použití spravované identity pro ověřování přístupu k prostředkům chráněným službou Azure Active Directory (Azure AD). Když k ověření připojení použijete spravovanou identitu, nemusíte zadávat přihlašovací údaje, tajné kódy ani Azure AD tokeny. Azure spravuje tuto identitu 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 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 ve skupině dalších prostředků aplikace logiky.
Tento článek ukazuje, jak povolit a nastavit spravovanou identitu pro aplikaci logiky, a poskytuje příklad použití identity k ověřování. Na rozdíl od identity přiřazené systémem, kterou nemusíte vytvářet ručně , musíte identitu přiřazenou uživatelem vytvořit ručně. Tento článek ukazuje, jak vytvořit identitu přiřazenou uživatelem pomocí Azure Portal a šablony Azure Resource Manager (šablony ARM). Informace o Azure PowerShell, 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 |
Porovnání využití vs. standardních aplikací logiky
V závislosti na typu prostředku aplikace logiky můžete povolit buď identitu přiřazenou systémem, identitu přiřazenou uživatelem, nebo obojí najednou:
Aplikace logiky | Prostředí | Podpora spravovaných identit |
---|---|---|
Využití | – Azure Logic Apps pro více tenantů – 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ředku aplikace logiky a na úrovni připojení. – Pokud povolíte identitu přiřazenou uživatelem, vaše aplikace logiky může mít najednou jenom jednu identitu přiřazenou uživatelem. |
Standard | – Azure Logic Apps pro jednoho tenanta – App Service Environment v3 (ASEv3) – Logic Apps s podporou Azure Arc |
– Můžete současně povolit identitu přiřazenou systémem, která je ve výchozím nastavení povolená, i identitu přiřazenou uživatelem. – Spravovanou identitu můžete použít na úrovni prostředku aplikace logiky a na úrovni připojení. – Pokud povolíte identitu přiřazenou uživatelem, prostředek aplikace logiky může mít najednou více identit přiřazených uživatelem. |
Další informace o limitech 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:
- Co je Azure Logic Apps?
- Porovnání jednoho tenanta nebo více tenantů a prostředí integrační služby
- Logic Apps s podporou Služby Azure Arc
Kde můžete použít spravovanou identitu
Spravovanou identitu můžou k ověřování používat jenom konkrétní integrované a spravované operace konektoru, které podporují Azure AD open authentication (Azure AD OAuth). Následující tabulka obsahuje pouze ukázkový výběr. Úplnější 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í Azure AD se spravovanými identitami.
Následující tabulka uvádí konektory, které podporují použití spravované identity v pracovním postupu aplikace logiky Consumption:
Typ spojnice | 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 služby Azure Storage za branami firewall Azure 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é | – Azure AD Identity Protection - Azure App Service - Azure Automation – Azure Blob Storage – Azure Container Instance – 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 Azure AD - SQL Server |
Předpoklady
Úč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. K tomuto prostředku přidáte potřebnou roli, aby spravovaná identita měla přístup k tomuto prostředku jménem vaší aplikace logiky nebo připojení. Pokud chcete přidat roli ke spravované identitě, potřebujete Azure AD oprávnění správce, která můžou přiřazovat role identitám v odpovídajícím Azure AD tenantovi.
Prostředek a pracovní postup aplikace logiky, ve kterém chcete použít trigger nebo akce, které podporují spravované identity.
Povolení identity přiřazené systémem v Azure Portal
V Azure Portal přejděte k prostředku aplikace logiky.
V nabídce aplikace logiky v části Nastavení vyberte Identita.
V podokně Identita v části Přiřazený systém 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, je váš prostředek aplikace logiky 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.
Váš prostředek aplikace logiky teď může používat identitu přiřazenou systémem. Tato identita je zaregistrovaná pomocí Azure AD 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 Azure AD. Teď postupujte podle kroků, které této identitě udělí přístup k prostředku dále v tomto tématu.
Povolení identity přiřazené systémem v šabloně ARM
Pokud chcete automatizovat vytváření a nasazování prostředků aplikace logiky, můžete použít šablonu ARM. Pokud chcete povolit identitu přiřazenou systémem pro prostředek aplikace logiky v šabloně, 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) objektu instančního objektu pro spravovanou identitu, která představuje vaši aplikaci logiky v tenantovi Azure AD. 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 Azure AD tenanta, kde je aplikace logiky nyní členem. V tenantovi Azure AD má instanční objekt stejný název jako instance aplikace logiky. |
Vytvoření identity přiřazené uživatelem v Azure Portal
Než budete moct povolit identitu přiřazenou uživatelem v prostředku Aplikace logiky (Consumption) nebo Aplikace logiky (Standard), musíte nejprve tuto identitu vytvořit jako samostatný prostředek Azure.
Do vyhledávacího pole Azure Portal zadejte
managed identities
. Vyberte Spravované identity.V podokně Spravované identity vyberte Vytvořit.
Zadejte informace o spravované identitě a pak vyberte Zkontrolovat a vytvořit, například:
Vlastnost Požaduje se Hodnota Popis Předplatné Ano <Název předplatného Azure> Název předplatného Azure, které se má použít Skupina prostředků Ano <Název skupiny prostředků Azure> Název skupiny prostředků Azure, která se má použít. Vytvořte novou skupinu nebo vyberte existující skupinu. Tento příklad vytvoří novou skupinu s názvem fabrikam-managed-identities-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> Název pro zadání identity přiřazené uživatelem. Tento příklad 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 v Azure Portal
V Azure Portal otevřete prostředek aplikace logiky.
V nabídce aplikace logiky v části Nastavení vyberte Identita.
V podokně Identita vyberte Uživatelem přiřazené>Přidat.
V podokně Přidat spravovanou identitu přiřazenou uživatelem postupujte takto:
V seznamu Předplatné vyberte své předplatné Azure, pokud ještě není vybrané.
V seznamu se všemi spravovanými identitami v daném 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, vaše aplikace logiky už je přidružená k identitě přiřazené systémem. Před přidáním identity přiřazené 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ě udělí přístup k prostředku dále v tomto tématu.
Vytvoření identity přiřazené uživatelem v šabloně ARM
Pokud chcete automatizovat vytváření a nasazování prostředků aplikace logiky, můžete použít šablonu ARM. Tyto šablony podporují ověřování identit přiřazených uživatelem.
V části šablony resources
vyžaduje definice prostředku aplikace logiky tyto položky:
Objekt
identity
stype
vlastností nastavenou naUserAssigned
Podřízený
userAssignedIdentities
objekt, který určuje prostředek přiřazený uživatelem a název
Tento příklad ukazuje definici prostředku aplikace logiky Consumption pro požadavek HTTP PUT a obsahuje neparametrizovaný identity
objekt. Odpověď na požadavek PUT a následnou operaci GET mají 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 parametrizovat identity
objekt. Tento 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 k ověřování použít spravovanou identitu vaší aplikace logiky, musíte pro tuto identitu nastavit přístup k prostředku Azure, ve kterém chcete identitu použít. Způsob nastavení přístupu se liší v závislosti na prostředku, ke kterému má identita přistupovat.
Poznámka
Pokud má spravovaná identita přístup k prostředku Azure ve stejném předplatném, má tato identita přístup pouze k ho 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ž má přístup k cílovému prostředku.
Pokud chcete toto chování zvládnout, 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 předplatné, musíte identitě udělit přístup k předplatnému.
Pokud například chcete získat přístup k účtu služby 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 k účtu úložiště příslušnou roli pro tuto identitu. Kroky v této části popisují, jak provést tuto úlohu pomocí šablony Azure Portal a Azure Resource Manager (šablona ARM). Informace o Azure PowerShell, Azure CLI a rozhraní Azure REST API najdete v následující dokumentaci:
Nástroj | Dokumentace |
---|---|
Azure PowerShell | Přidat přiřazení role |
Azure CLI | Přidat přiřazení role |
Azure REST API | Přidat přiřazení role |
Pokud ale chcete získat přístup k trezoru klíčů Azure se spravovanou identitou, musíte pro tuto identitu vytvořit zásadu přístupu ve svém trezoru klíčů a přiřadit pro tuto identitu odpovídající oprávnění k danému trezoru klíčů. Další kroky v této části popisují, jak provést tuto úlohu pomocí Azure Portal. Informace o šablonách Resource Manager, PowerShellu a Azure CLI najdete v následující dokumentaci:
Nástroj | Dokumentace |
---|---|
Šablona ARM (Azure Resource Manager) | Key Vault definice prostředku zásad přístupu |
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 v Azure Portal
Pokud chcete k ověřování použít spravovanou identitu, 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ásady přístupu, které mají příslušná oprávnění k cílovému prostředku pro danou identitu.
V Azure Portal otevřete prostředek, ve kterém chcete použít identitu.
V nabídce prostředku vyberte Řízení přístupu (IAM)>Přidat>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 Azure AD předdefinovaných rolí.
Teď své spravované identitě přiřaďte 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 v objektech 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, ke které chcete přiřadit roli. V části Přiřadit přístup k vyberte Spravovaná identita>Přidat členy.
Na základě typu spravované identity vyberte nebo zadejte následující hodnoty:
Typ Instance služby Azure Předplatné Člen Přiřazeno systémem Aplikace logiky <Název předplatného Azure> <název vaší aplikace logiky> Přiřazeno uživatelem Nelze použít <Název předplatného Azure> <your-user-assigned-identity-name> Další informace o přiřazování rolí najdete v dokumentaci Přiřazení rolí pomocí Azure Portal.
Po dokončení můžete identitu použít k ověření přístupu k triggerům a akcím, které podporují spravované identity.
Obecnější 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 v Azure Portal
Pokud chcete k ověřování použít spravovanou identitu, 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 roli, která má příslušná oprávnění k cílovému prostředku.
V Azure Portal otevřete cílový prostředek, ve kterém chcete použít identitu. V tomto příkladu se jako cílový prostředek používá trezor klíčů Azure.
V nabídce prostředku vyberte Zásady> přístupuVytvořit, čímž se 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ýpis tajných kódů spravovaného konektoru Azure Key Vault, identita potřebuje oprávnění List. Takže ve sloupci Oprávnění k tajným kódům 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 k triggeru nebo akci. Příklad pokračuje kroky z předchozí části, kde nastavíte přístup ke spravované identitě pomocí RBAC a jako příklad nepoužíváte Azure Key Vault. Obecný postup použití spravované identity pro ověřování je ale stejný.
Ověřování přístupu pomocí spravované identity
Jakmile povolíte spravovanou identitu pro prostředek aplikace logiky a udělíte této identitě přístup 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 Azure Portal. Pokud chcete zadat spravovanou identitu v základní definici JSON triggeru nebo akce, projděte si téma Ověřování spravované identity.
V 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 triggery a akce podporují možnost přidat typ ověřování. Další informace najdete v tématu Typy ověřování pro triggery a akce, které podporují ověřování.
U triggeru nebo akce, kterou jste přidali, postupujte takto:
Předdefinované operace, 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 příkladu: Ověřování předdefinované aktivační události nebo akce pomocí spravované identity.
Operace spravovaného konektoru, které podporují ověřování spravované identity
Na stránce výběru tenanta vyberte Připojit se pomocí spravované identity, například:
Na další stránce do pole Název připojení zadejte název, který se má použít pro připojení.
Jako typ ověřování zvolte jednu z následujících možností v závislosti na spravovaném konektoru:
Jedno ověřování: Tyto konektory podporují jenom jeden typ ověřování. V seznamu Spravovaná identita 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 stále můžete vybrat jenom jeden typ. V seznamu Typ ověřování vyberte Vytvořit spravovanou identitu> služby Logic Apps, například:
Další informace najdete v příkladu: Trigger nebo akce ověřování spravovaného konektoru pomocí spravované identity.
Příklad: Ověření předdefinované aktivační události nebo akce pomocí spravované identity
Předdefinovaný trigger http nebo akce může používat identitu přiřazenou systémem, kterou povolíte ve svém prostředku aplikace logiky. Obecně platí, že trigger nebo akce HTTP používá k určení prostředku nebo entity, ke které chcete získat přístup, následující vlastnosti:
Vlastnost | Povinné | Popis |
---|---|---|
Metoda | Ano | Metoda HTTP používaná operací, 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 nebo služby Azure. |
Hlavičky | Ne | Všechny hodnoty hlaviček, které potřebujete nebo chcete zahrnout do odchozího požadavku, například typ obsahu |
Dotazy | Ne | 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 vytvoření snímku objektu blob pro objekt blob v účtu služby Azure Storage, ve kterém jste dříve nastavili přístup pro vaši identitu. Konektor Azure Blob Storage ale tuto operaci v současné době 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, nezapomeňte nastavit také účet úložiště s výjimkou, která umožňuje přístup důvěryhodným službám Microsoftu.
Pokud chcete spustit operaci Vytvoření snímku objektu blob, akce HTTP určuje tyto vlastnosti:
Vlastnost | Požaduje se | Příklad hodnoty | Popis |
---|---|---|---|
Metoda | Ano | PUT |
Metoda HTTP, kterou používá operace Vytvoření objektu 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 |
Hlavičky | Pro Azure Storage | x-ms-blob-type = BlockBlob
|
Hodnoty x-ms-blob-type v hlavičce , x-ms-version a x-ms-date se vyžadují pro operace Služby Azure Storage. Důležité: V odchozím triggeru HTTP a požadavcích akcí pro Azure Storage vyžaduje Další informace najdete v těchto tématech: - Hlavičky požadavku – Snímek objektu blob |
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 Vytvoření snímku objektu blob:
Po přidání akce HTTP přidejte do akce HTTP vlastnost Ověřování . V seznamu Přidat nový parametr vyberte Ověřování.
Poznámka
Ne všechny triggery a akce umožňují přidat typ 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í podle vašeho scénáře.
Pokud nastavíte identitu přiřazenou systémem, vyberte spravovaná identita přiřazená systémem , pokud ještě není vybraná.
Pokud nastavíte identitu přiřazenou uživatelem, vyberte ji, pokud ještě není vybraná.
Tento příklad pokračuje spravovanou identitou přiřazenou systémem.
U některých triggerů a akcí se také zobrazí vlastnost Cílová skupina, abyste mohli nastavit ID cílového prostředku. Vlastnost Cílová skupina nastavte na ID prostředku cílového prostředku nebo služby. Jinak 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 Key Vault v globálním cloudu Azure, musíte nastavit vlastnost Cílová skupinana přesně následující ID prostředku:
https://vault.azure.net
. Toto konkrétní ID prostředku nemá žádná koncová lomítka. Ve skutečnosti může zahrnutí koncového lomítka 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 Azure Active Directory (AD) očekává, 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ů služeb Azure, které podporují Azure AD.
Tento příklad nastaví vlastnost Audience na ,
https://storage.azure.com/
aby přístupové tokeny používané k ověřování byly platné pro všechny účty úložiště. Můžete ale také zadat adresu URLhttps://<your-storage-account>.blob.core.windows.net
kořenové služby pro konkrétní účet úložiště.Další informace o autorizaci přístupu pomocí Azure AD pro Azure Storage najdete v následující dokumentaci:
Pokračujte v vytváření pracovního postupu požadovaným způsobem.
Příklad: Trigger nebo akce ověřování spravovaného konektoru pomocí spravované identity
Spravovaný konektor Azure Resource Manager má akci s názvem Číst prostředek, která může používat spravovanou identitu, kterou povolíte u prostředku 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 Azure AD vyberte Připojit se pomocí spravované identity.
Na stránce s názvem připojení zadejte název připojení a vyberte spravovanou identitu, kterou chcete použít.
Akce Azure Resource Manager je akce s jedním ověřením, takže podokno informací o připojení zobrazuje seznam spravovaných identit, který automaticky vybere spravovanou identitu, která je aktuálně povolená v prostředku aplikace logiky. Pokud jste povolili spravovanou identitu přiřazenou systémem, v seznamu Spravovaná identitavyberete Spravovaná identita přiřazená systémem. Pokud jste místo toho povolili spravovanou identitu přiřazenou uživatelem, vybere se v seznamu tato identita.
Pokud používáte trigger nebo akci s více ověřováními, například Azure Blob Storage, zobrazí se v podokně s informacemi o připojení seznam Typ ověřování, který obsahuje možnost Spravovaná identita služby Logic Apps mezi dalšími typy ověřování.
V tomto příkladu je jediným dostupným výběrem spravovaná identita přiřazená systémem .
Poznámka
Pokud spravovaná identita není při pokusu o vytvoření připojení, změně připojení nebo byla odebrána, když stále existuje připojení s povolenou spravovanou identitou, zobrazí se chybová zpráva, ž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 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. Za běhu připojení používá spravovanou identitu, která je povolená pro prostředek aplikace logiky. Za běhu služba Azure Logic Apps zkontroluje, jestli jsou některé triggery a akce spravovaného konektoru v pracovním postupu aplikace logiky nastavené tak, aby používaly spravovanou identitu 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 Azure Logic Apps načte token Azure AD, který je 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 $connections
objekt, který obsahuje ukazatele na ID prostředku připojení spolu s ID prostředku identity, pokud je identita přiřazená uživatelem povolená.
Tento příklad ukazuje, jak vypadá konfigurace, 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 vypadá konfigurace, 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žíváte š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 udělat další krok.
V šabloně ARM se definice prostředku podkladového konektoru liší v závislosti na tom, jestli máte aplikaci logiky Consumption nebo Standard a jestli konektor zobrazuje možnosti jednotného nebo více ověřování.
Následující příklady se týkají aplikací 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 s více ověřováními, jako je Azure Blob Storage.
Jedno ověřování
Tento příklad ukazuje základní definici prostředku připojení pro akci Azure Automation v aplikaci logiky Consumption, která používá spravovanou identitu, kde definice obsahuje atributy:
- Vlastnost
apiVersion
je nastavena na hodnotu2016-06-01
. - Vlastnost
kind
je nastavená naV1
pro aplikaci logiky Consumption. - Vlastnost
parameterValueType
je nastavena na hodnotuAlternative
.
{
"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"
}
},
Vícenásobné ověřování
Tento příklad ukazuje základní definici prostředku připojení pro akci Azure Blob Storage v aplikaci logiky Consumption, která používá spravovanou identitu, kde definice obsahuje následující atributy:
- Vlastnost
apiVersion
je nastavena na hodnotu2018-07-01-preview
. - Vlastnost
kind
je nastavená naV1
pro aplikaci logiky Consumption. - Objekt
parameterValueSet
obsahujename
vlastnost, která je nastavená namanagedIdentityAuth
, avalues
vlastnost, která je nastavená na prázdný objekt.
{
"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": {}
}
}
}
Nastavení pokročilého řízení ověřování 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í č. 1 je nastavené s ověřováním pro interní úložiště tokenů.
Připojení č. 2 je nastavené s ověřováním pro cílový prostředek.
V prostředku aplikace logiky Consumption se od vás abstrahuje připojení č. 1 bez jakýchkoli možností konfigurace. V typu prostředku aplikace logiky Standard máte větší kontrolu nad aplikací logiky. Ve výchozím nastavení je připojení č. 1 automaticky nastavené tak, aby používalo identitu přiřazenou systémem.
Pokud ale váš scénář vyžaduje větší kontrolu nad ověřováním připojení 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í se vztahuje na 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 aplikace logiky Standard, ve kterém jsou uložené informace o jednotlivých připojeních 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
část 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
pro aplikaci, která se nasazuje do Azure, a neměla žádné konfigurovatelné možnosti.Druhá
authentication
část se mapuje na připojení č. 2. Tato část popisuje, jaké ověřování se používá pro komunikaci s cílovým prostředkem, se může lišit v závislosti na typu ověřování, který pro dané připojení vyberete.
Proč měnit ověřování pro ú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, aby se identita přiřazená systémem nastavila v aplikaci logiky úplně, abyste mohli 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í pro úložiště tokenů
V Azure Portal otevřete prostředek aplikace logiky Standard.
V nabídce prostředků v části Pracovní postupy vyberte Připojení.
V podokně Připojení vyberte Zobrazení JSON.
V editoru JSON vyhledejte
managedApiConnections
část, která obsahuje připojení rozhraní API napříč všemi pracovními postupy ve vašem prostředku aplikace logiky.Vyhledejte připojení, do kterého chcete přidat spravovanou identitu přiřazenou uživatelem. Předpokládejme například, že váš pracovní postup má připojení 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ě neexistuje žádnáidentity
vlastnost, aplikace logiky implicitně použije identitu přiřazenou systémem.Přidejte vlastnost
identity
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>" }
V Azure Portal přejděte na cílový prostředek a udělte přístup ke spravované identitě přiřazené uživatelem na základě potřeb cílového prostředku.
Například pro Azure Key Vault přidejte identitu do zásad přístupu trezoru klíčů. Pro Azure Blob Storage přiřaďte účtu úložiště potřebnou roli pro identitu.
Zakázání spravované identity
Pokud chcete přestat používat spravovanou identitu k ověřování, nejprve odeberte přístup identity k cílovému prostředku. Dále u prostředku aplikace logiky vypněte identitu přiřazenou systémem nebo odeberte identitu přiřazenou uživatelem.
Když u 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 tato 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 této aplikace logiky, a to ani v případě, že identitu okamžitě znovu povolíte. 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. Pokud chcete tento problém vyřešit, musíte znovu vytvořit připojení, aby používala aktuální ID objektu pro aktuální identitu přiřazenou systémem.
Pokuste se co nejvíce zabránit zakázání identity přiřazené systémem. 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 Azure AD.
Postup v této části popisuje použití šablony Azure Portal a Azure Resource Manager (šablona ARM). Informace o Azure PowerShell, 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 v Azure Portal
Pokud chcete odebrat přístup ke spravované identitě, odeberte přiřazení role identity z cílového prostředku a pak spravovanou identitu zakažte.
Odebrání přiřazení role
Následující kroky odeberou přístup k cílovému prostředku ze spravované identity:
V Azure Portal přejděte k cílovému prostředku Azure, kde chcete odebrat přístup ke spravované identitě.
V nabídce cílového prostředku vyberte Řízení přístupu (IAM). Na panelu 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, najdete v tématu Oprávnění rolí správce v Azure Active Directory.
Zákaz spravované identity u prostředku aplikace logiky
V Azure Portal otevřete prostředek aplikace logiky.
V navigační nabídce aplikace logiky v části Nastavení vyberte Identita a pak postupujte podle pokynů 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 identity
podřízenou vlastnost objektu type
na None
.
"identity": {
"type": "None"
}