Ověřování javascriptových aplikací ve službách Azure během místního vývoje pomocí vývojářských účtů

Při vytváření cloudových aplikací musí vývojáři ladit a testovat aplikace na místní pracovní stanici. Když je aplikace spuštěná na pracovní stanici vývojáře během místního vývoje, musí se stále ověřovat u všech služeb Azure, které aplikace používá. Tento článek popisuje, jak pomocí přihlašovacích údajů Azure vývojáře ověřit aplikaci v Azure během místního vývoje.

Diagram znázorňující místní vývojovou aplikaci, která spouští získání instančního objektu ze souboru .env, a tuto identitu použijte pro připojení k prostředkům Azure.

Aby se aplikace při místním vývoji ověřila v Azure pomocí přihlašovacích údajů Azure vývojáře, musí být vývojář přihlášený k Azure z rozšíření Visual Studio Code Azure Tools, Azure CLI nebo Azure PowerShellu. Sada Azure SDK pro JavaScript dokáže zjistit, že vývojář je přihlášený z některého z těchto nástrojů, a pak z mezipaměti přihlašovacích údajů získat potřebné přihlašovací údaje k ověření aplikace v Azure jako přihlášený uživatel.

Tento přístup je nejjednodušší nastavit pro vývojový tým, protože využívá stávající účty Azure vývojářů. Účet vývojáře ale pravděpodobně bude mít více oprávnění, než vyžaduje aplikace, a proto překročí oprávnění, která aplikace běží v produkčním prostředí. Jako alternativu můžete vytvořit instanční objekty aplikace, které se použijí při místním vývoji, což může být vymezeno tak, aby měly přístup potřebný jenom pro aplikaci.

1. Vytvoření skupiny Microsoft Entra pro místní vývoj

Vzhledem k tomu, že na aplikaci pracuje téměř vždy více vývojářů, doporučuje se nejprve vytvořit skupinu Microsoft Entra, která zapouzdří role (oprávnění), které aplikace potřebuje v místním vývoji. To nabízí následující výhody.

  • Každý vývojář má jistotu, že má přiřazené stejné role, protože role jsou přiřazené na úrovni skupiny.
  • Pokud je pro aplikaci potřeba nová role, stačí ji přidat jenom do skupiny Microsoft Entra pro aplikaci.
  • Pokud se nový vývojář připojí k týmu, musí být jednoduše přidán do správné skupiny Microsoft Entra, aby získal správná oprávnění pro práci s aplikací.

Pokud máte pro vývojový tým existující skupinu Microsoft Entra, můžete ji použít. V opačném případě proveďte následující kroky a vytvořte skupinu Microsoft Entra.

Pokyny Snímek obrazovky
Na webu Azure Portal přejděte na stránku s ID Microsoft Entra tak, že do vyhledávacího pole v horní části stránky zadáte ID Microsoft Entra a pak v části služby vyberete ID Microsoft Entra. Snímek obrazovky znázorňující, jak pomocí horního panelu hledání na webu Azure Portal vyhledat a přejít na stránku MICROSOFT Entra ID
Na stránce Microsoft Entra ID vyberte skupiny z levé nabídky. Snímek obrazovky znázorňující umístění položky nabídky Skupiny v nabídce vlevo na stránce Výchozí adresář Microsoft Entra ID
Na stránce Všechny skupiny vyberte Možnost Nová skupina. Snímek obrazovky znázorňující umístění tlačítka Nová skupina na stránce Všechny skupiny
Na stránce Nová skupina:
  1. Typ skupiny → Zabezpečení.
  2. Název skupiny → název skupiny zabezpečení, obvykle vytvořený z názvu aplikace. Je také užitečné do názvu skupiny zahrnout řetězec, jako je local-dev , který označuje účel skupiny.
  3. Popis skupiny → Popis účelu skupiny.
  4. Vyberte odkaz Žádné členy vybrané v části Členové a přidejte do skupiny členy.
Snímek obrazovky znázorňující, jak vytvořit novou skupinu Microsoft Entra Umístění odkazu, které chcete vybrat pro přidání členů do této skupiny, je zvýrazněné.
V dialogovém okně Přidat členy :
  1. Pomocí vyhledávacího pole vyfiltrujte seznam uživatelských jmen v seznamu.
  2. Zvolte jednoho nebo více uživatelů pro místní vývoj pro tuto aplikaci. Při výběru objektu se objekt přesune do seznamu Vybrané položky v dolní části dialogového okna.
  3. Po dokončení zvolte tlačítko Vybrat .
Snímek obrazovky s dialogovým oknem Přidat členy zobrazující, jak vybrat vývojářské účty, které se mají zahrnout do skupiny
Zpět na stránce Nová skupina vyberte Vytvořit a vytvořte skupinu.

Skupina se vytvoří a budete přesměrováni zpět na stránku Všechny skupiny . Zobrazení skupiny může trvat až 30 sekund a možná budete muset stránku aktualizovat kvůli ukládání do mezipaměti na webu Azure Portal.
Snímek obrazovky se stránkou Nová skupina znázorňující, jak proces dokončit výběrem tlačítka Vytvořit

2. Přiřazení rolí ke skupině Microsoft Entra

Dále musíte určit, jaké role (oprávnění) vaše aplikace potřebuje k jakým prostředkům, a přiřadit tyto role k aplikaci. V tomto příkladu jsou role přiřazeny ke skupině Microsoft Entra vytvořené v kroku 1. Role je možné přiřadit roli v oboru prostředku, skupiny prostředků nebo předplatného. Tento příklad ukazuje, jak přiřadit role v oboru skupiny prostředků, protože většina aplikací seskupuje všechny prostředky Azure do jedné skupiny prostředků.

Pokyny Snímek obrazovky
Vyhledejte skupinu prostředků pro vaši aplikaci vyhledáním názvu skupiny prostředků pomocí vyhledávacího pole v horní části webu Azure Portal.

Přejděte do skupiny prostředků tak, že v dialogovém okně vyberete název skupiny prostředků pod nadpisem Skupiny prostředků.
Snímek obrazovky znázorňující, jak pomocí horního vyhledávacího pole na webu Azure Portal vyhledat a přejít do skupiny prostředků, ke které chcete přiřadit role (oprávnění).
Na stránce skupiny prostředků v nabídce vlevo vyberte Řízení přístupu (IAM ). Snímek obrazovky se stránkou skupiny prostředků zobrazující umístění položky nabídky Řízení přístupu (IAM).
Na stránce Řízení přístupu (IAM):
  1. Vyberte kartu Přiřazení rolí.
  2. V horní nabídce vyberte + Přidat a potom přidejte přiřazení role z výsledné rozevírací nabídky.
Snímek obrazovky znázorňující, jak přejít na kartu Přiřazení rolí a umístění tlačítka použitého k přidání přiřazení rolí do skupiny prostředků
Na stránce Přidat přiřazení role jsou uvedeny všechny role, které je možné přiřadit skupině prostředků.
  1. Pomocí vyhledávacího pole vyfiltrujte seznam na lépe spravovatelnou velikost. Tento příklad ukazuje, jak filtrovat role objektů blob služby Storage.
  2. Vyberte roli, kterou chcete přiřadit.
    Výběrem možnosti Další přejdete na další obrazovku.
Snímek obrazovky znázorňující, jak filtrovat a vybrat přiřazení rolí, která se mají přidat do skupiny prostředků
Další stránka Přidat přiřazení role umožňuje určit, k jakému uživateli se má role přiřadit.
  1. V části Přiřadit přístup vyberte Uživatele, skupinu nebo instanční objekt.
  2. Vyberte a vyberte členy v části Členové.
Otevře se dialogové okno na pravé straně webu Azure Portal.
Snímek obrazovky znázorňující přepínač pro výběr přiřazení role ke skupině Microsoft Entra a odkaz použitý k výběru skupiny pro přiřazení role
V dialogovém okně Vybrat členy :
  1. Textové pole Vybrat lze použít k filtrování seznamu uživatelů a skupin ve vašem předplatném. V případě potřeby zadejte několik prvních znaků místní vývojové skupiny Microsoft Entra, kterou jste pro aplikaci vytvořili.
  2. Vyberte místní skupinu Microsoft Entra pro vývoj přidruženou k vaší aplikaci.
Pokračujte výběrem možnosti Vybrat v dolní části dialogového okna.
Snímek obrazovky znázorňující, jak filtrovat a vybrat skupinu Microsoft Entra pro aplikaci v dialogovém okně Vybrat členy
Skupina Microsoft Entra se zobrazí jako vybraná na obrazovce Přidat přiřazení role.

Výběrem možnosti Zkontrolovat a přiřadit přejděte na poslední stránku a pak proces dokončete opětovnou kontrolou a přiřazením .
Snímek obrazovky zobrazující dokončenou stránku Přidat přiřazení role a umístění tlačítka Zkontrolovat a přiřadit použité k dokončení procesu

3. Přihlášení k Azure pomocí VS Code, Azure CLI nebo Azure PowerShellu

Otevřete terminál na vývojářské pracovní stanici a přihlaste se k Azure z Azure PowerShellu.

Connect-AzAccount

4. Implementace defaultAzureCredential ve vaší aplikaci

K ověřování klientských objektů sady Azure SDK v Azure by vaše aplikace měla používat DefaultAzureCredential třídu z @azure/identity balíčku. V tomto scénáři postupně zkontrolujete, DefaultAzureCredential jestli se vývojář přihlásil k Azure pomocí rozšíření nástrojů Azure VS Code, Azure CLI nebo Azure PowerShellu. Pokud je vývojář přihlášený k Azure pomocí některého z těchto nástrojů, použije aplikace přihlašovací údaje použité k přihlášení k nástroji k ověření v Azure.

Začněte přidáním balíčku @azure/identity do aplikace.

npm install @azure/identity

V dalším kroku pro libovolný javascriptový kód, který ve vaší aplikaci vytvoří objekt klienta sady Azure SDK, budete chtít:

  1. Naimportujte třídu DefaultAzureCredential z @azure/identity modulu.
  2. Vytvoření objektu DefaultAzureCredential
  3. DefaultAzureCredential Předejte objekt konstruktoru klientského objektu sady Azure SDK.

Příklad je znázorněn v následujícím segmentu kódu.

import { BlobServiceClient } from '@azure/storage-blob';
import { DefaultAzureCredential } from '@azure/identity';

// Acquire a credential object
const tokenCredential = DefaultAzureCredential();

const blobServiceClient = BlobServiceClient(
        `https://${accountName}.blob.core.windows.net`,
        tokenCredential
);

DefaultAzureCredential automaticky rozpozná mechanismus ověřování nakonfigurovaný pro aplikaci a získá potřebné tokeny pro ověření aplikace v Azure. Pokud aplikace používá více než jednoho klienta sady SDK, lze stejný objekt přihlašovacích údajů použít s každým objektem klienta sady SDK.