Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Doporučeným přístupem k ověření aplikace hostované v Azure u jiných prostředků Azure je použití spravované identity. Tento přístup je podporovaný pro většinu služeb Azure, včetně aplikací hostovaných v Azure App Service, Azure Container Apps a Azure Virtual Machines. Další informace o různých technikách ověřování a přístupech najdete na stránce s přehledem ověřování . V dalších částech se dozvíte:
- Základní koncepty spravované identity
- Vytvoření spravované identity přiřazené uživatelem pro vaši aplikaci
- Přiřazení rolí spravované identitě přiřazené uživatelem
- Jak se ověřit pomocí spravované identity přiřazené uživatelem z vašeho aplikačního kódu
Základní koncepty spravované identity
Spravovaná identita umožňuje aplikaci bezpečně připojit k jiným prostředkům Azure bez použití tajných klíčů nebo jiných tajných kódů aplikací. Azure interně sleduje identitu a prostředky, ke kterým se může připojit. Azure tyto informace používá k automatickému získání tokenů Microsoft Entra pro aplikaci, aby se mohla připojit k dalším prostředkům Azure.
Při konfiguraci hostované aplikace je potřeba zvážit dva typy spravovaných identit:
- systémově přiřazené spravované identity jsou povoleny přímo na prostředku Azure a jsou svázané s jeho životním cyklem. Když se prostředek odstraní, Azure automaticky odstraní identitu za vás. Identity přiřazené systémem poskytují minimalistický přístup k používání spravovaných identit.
- spravované identity přiřazené uživatelem se vytvářejí jako samostatné prostředky Azure a nabízejí větší flexibilitu a možnosti. Jsou ideální pro řešení zahrnující více prostředků Azure, které potřebují sdílet stejnou identitu a oprávnění. Pokud například více virtuálních počítačů potřebuje přístup ke stejné sadě prostředků Azure, spravovaná identita přiřazená uživatelem poskytuje opakovaně použitelný a optimalizovanou správu.
Návod
Další informace o výběru a správě spravovaných identit přiřazených systémem a přiřazených uživatelem najdete v článku s doporučeními k osvědčeným postupům spravované identity .
Následující části popisují kroky pro povolení a použití spravované identity přiřazené uživatelem pro aplikaci hostované v Azure. Pokud potřebujete použít spravovanou identitu přiřazenou systémem, další informace najdete v článku o spravovaných identitách přiřazených systémem .
Vytvořit uživatelsky přiřazenou spravovanou identitu
Spravované identity přiřazené uživatelem se ve vašem předplatném Azure vytvářejí jako samostatné prostředky pomocí Azure portálu nebo Azure CLI. Příkazy Azure CLI je možné spouštět v Azure Cloud Shellu nebo na pracovní stanici s nainstalovaným Azure CLI.
V Azure portálu do hlavního panelu hledání zadejte spravované identity a v sekci Služby vyberte odpovídající výsledek.
Na stránce Spravované identity vyberte + Vytvořit.
Na stránce Vytvořit spravovanou identitu přiřazenou uživatelem vyberte předplatné, skupinu prostředků a oblast spravované identity přiřazené uživatelem a zadejte název.
Vyberte Zkontrolovat a vytvořit pro revizi a ověření vašich vstupů.
Vyberte Vytvořit a vytvořte spravovanou identitu přiřazenou uživatelem.
Po vytvoření identity vyberte Přejít k prostředku.
Na stránce Přehled nové identity zkopírujte hodnotu ID klienta , která se použije pro pozdější použití při konfiguraci kódu aplikace.
Přiřazení spravované identity k aplikaci
Spravovanou identitu přiřazenou uživatelem je možné přidružit k jednomu nebo více prostředkům Azure. Všechny prostředky, které tuto identitu používají, získají oprávnění získaná skrze role identity.
Na webu Azure Portal přejděte k prostředku, který je hostitelem kódu vaší aplikace, jako je azure App Service nebo instance kontejnerové aplikace Azure.
Na stránce přehledu prostředku rozbalte nastavení a v navigaci vyberte Identitu.
Na stránce Identita přepněte na záložku uživatelsky přiřazené.
Výběrem + Přidat otevřete panel Přidat uživatelem přiřazenou spravovanou identitu.
Na panelu Přidat uživatelsky přiřazenou spravovanou identitu použijte rozevírací seznam Předplatné k filtrování výsledků vyhledávání pro vaše identity. Pomocí vyhledávacího pole uživatelsky přiřazené spravované identity vyhledejte uživatelsky přiřazenou spravovanou identitu, kterou jste povolili pro prostředek Azure hostující vaši aplikaci.
Vyberte identitu a dole na panelu zvolte Přidat, abyste pokračovali.
Přiřazení rolí ke spravované identitě
Dále určete, které role vaše aplikace potřebuje, a přiřaďte tyto role spravované identitě. Spravované identitě můžete přiřadit role v následujících oborech:
- zdroj: Přiřazené role se vztahují pouze na tento konkrétní zdroj.
- skupiny prostředků: Přiřazené role se vztahují na všechny prostředky obsažené ve skupině prostředků.
- Předplatné: Přiřazené role se vztahují na všechny prostředky obsažené v předplatném.
Následující příklad ukazuje, jak přiřadit role v oboru skupiny prostředků, protože mnoho aplikací spravuje všechny související prostředky Azure pomocí jedné skupiny prostředků.
Přejděte na stránku Přehled skupiny prostředků, která obsahuje aplikaci s uživatelsky přiřazenou spravovanou identitou.
V levém navigačním panelu vyberte řízení přístupu (IAM).
Na stránce řízení přístupu (IAM) vyberte + Přidat v horní nabídce a potom zvolte Přidat přiřazení role a přejděte na stránku Přidat přiřazení role.
Na stránce Přidat přiřazení role se zobrazí vícekrokový pracovní postup se záložkami pro přiřazení rolí k identitám. Na úvodní kartě Role vyhledejte roli, kterou chcete přiřadit k identitě, pomocí vyhledávacího pole v horní části.
Ve výsledcích vyberte roli, potom klikněte na Další, abyste přešli na kartu Členové.
U možnosti Přiřadit přístup k vyberte možnost Spravovaná identita.
Pro otevření panelu Vybrat spravované identity vyberte u možnosti Členové volbu + Vybrat členy.
Na panelu Vyberte spravované identity použijte rozevírací seznamy Předplatné a Spravované identity k filtrování výsledků hledání pro vaše identity. Pomocí vyhledávacího pole Vybrat najděte uživatelsky přiřazenou spravovanou identitu, kterou jste povolili pro prostředek Azure hostující vaši aplikaci.
Vyberte identitu a zvolte Pokračujte výběrem v dolní části panelu.
Vyberte Zkontrolovat a přiřadit v dolní části stránky.
Na poslední kartě Zkontrolovat + přiřadit, vyberte možnost Zkontrolovat + přiřadit a dokončete pracovní postup.
Ověřování ve službách Azure z vaší aplikace
Knihovna Identit Azure poskytuje různé přihlašovací údaje – implementace TokenCredential přizpůsobené podpoře různých scénářů a toků ověřování Microsoft Entra. Vzhledem k tomu, že spravovaná identita není při místním spuštění dostupná, následující kroky ukazují, které přihlašovací údaje použít ve které situaci:
-
místní vývojové prostředí: Během místního vývoje pouzepoužijte třídu s názvem DefaultAzureCredential pro předkonfigurovaný řetězec přihlašovacích údajů.
DefaultAzureCredentialzjistí přihlašovací údaje uživatele z místního nástroje nebo integrovaného vývojového prostředí(IDE), jako je Azure CLI nebo Visual Studio Code. Poskytuje také flexibilitu a pohodlí pro opakování, doby čekání na odpovědi a podporu více možností ověřování. Další informace získáte v článku Ověřování ve službách Azure během místního vývoje. - Aplikace hostované v Azure: Pokud je vaše aplikace spuštěná v Azure, použijte ManagedIdentityCredential k bezpečnému zjištění spravované identity nakonfigurované pro vaši aplikaci. Zadáním tohoto přesného typu přihlašovacích údajů zabráníte neočekávanému vyzvednutí dalších dostupných přihlašovacích údajů.
Implementace kódu
Přidejte do aplikace balíček azure-identity tak, že přejdete do adresáře projektu aplikace a spustíte následující příkaz:
pip install azure-identity
Ke službám Azure se přistupuje pomocí specializovaných klientských tříd z různých klientských knihoven Azure SDK. Následující příklad kódu ukazuje, jak vytvořit instanci přihlašovacích údajů a použít ji s klientem služby Azure SDK. V kódu aplikace proveďte následující kroky pro ověření pomocí spravované identity:
- Naimportujte třídu
ManagedIdentityCredentialzazure.identitymodulu. - Vytvořte
ManagedIdentityCredentialobjekt a nakonfigurujte ID klienta, ID prostředku nebo ID objektu. -
ManagedIdentityCredentialPředejte objekt konstruktoru klienta Azure SDK.
- ID klienta
- Identifikátor prostředku
- ID objektu
ID klienta slouží k identifikaci spravované identity při konfiguraci aplikací nebo služeb, které je potřeba ověřit pomocí této identity.
Pomocí následujícího příkazu načtěte ID klienta přiřazené spravované identitě přiřazené uživatelem:
az identity show \ --resource-group <resource-group-name> \ --name <identity-name> \ --query 'clientId'Nakonfigurujte
ManagedIdentityCredentials ID klienta:from azure.identity import ManagedIdentityCredential from azure.storage.blob import BlobServiceClient credential = ManagedIdentityCredential( client_id="<client-id>" ) blob_service_client = BlobServiceClient( account_url="https://<account-name>.blob.core.windows.net", credential=credential )