Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas programowania lokalnego aplikacje muszą uwierzytelniać się na platformie Azure, aby uzyskać dostęp do różnych usług platformy Azure. Dwa typowe podejścia do uwierzytelniania lokalnego to użycie jednostki usługi albo użycie konta dewelopera. W tym artykule wyjaśniono, jak używać konta dewelopera. W poniższych sekcjach nauczysz się:
- Jak używać grup firmy Microsoft Entra do wydajnego zarządzania uprawnieniami dla wielu kont deweloperów
- Jak przypisać role do kont deweloperów w celu określenia zakresu uprawnień
- Jak zalogować się do obsługiwanych lokalnych narzędzi programistycznych
- Jak uwierzytelniać się przy użyciu konta dewelopera z poziomu kodu aplikacji
Aby aplikacja uwierzytelniła się na platformie Azure podczas programowania lokalnego przy użyciu poświadczeń platformy Azure dla deweloperów, deweloper musi zalogować się na platformę Azure z jednego z następujących narzędzi deweloperskich:
- Azure CLI
- Azure Developer CLI
- Azure PowerShell
Biblioteka tożsamości platformy Azure może wykryć, że deweloper jest zalogowany z jednego z tych narzędzi. Biblioteka może następnie uzyskać token dostępu firmy Microsoft Entra za pośrednictwem narzędzia w celu uwierzytelnienia aplikacji na platformie Azure jako zalogowanego użytkownika.
Takie podejście korzysta z istniejących kont platformy Azure dewelopera w celu usprawnienia procesu uwierzytelniania. Jednak konto dewelopera prawdopodobnie ma więcej uprawnień niż wymagane przez aplikację, w związku z czym przekracza uprawnienia uruchamiane przez aplikację w środowisku produkcyjnym. Alternatywnie można utworzyć zasady usługi aplikacji do użytku w trakcie lokalnego rozwoju, którym można przypisać jedynie dostęp wymagany przez aplikację.
Utwórz grupę Microsoft Entra dla lokalnego tworzenia
Utwórz grupę w Microsoft Entra, aby zdefiniować role (uprawnienia) potrzebne aplikacji podczas lokalnego rozwoju, zamiast przypisywać role poszczególnym obiektom zasad dostępu. Takie podejście zapewnia następujące korzyści:
- Każdy deweloper ma te same role przypisane na poziomie grupy.
- Jeśli dla aplikacji jest potrzebna nowa rola, należy ją dodać tylko do grupy aplikacji.
- Jeśli nowy deweloper dołączy do zespołu, zostanie utworzona nowa jednostka usługi aplikacji dla dewelopera i dodana do grupy, zapewniając deweloperowi odpowiednie uprawnienia do pracy nad aplikacją.
Przejdź do strony przeglądu Microsoft Entra ID w portalu Azure.
Wybierz pozycję Wszystkie grupy z menu po lewej stronie.
Na stronie Grupy wybierz pozycję Nowa grupa.
Na stronie Nowa grupa wypełnij następujące pola formularza:
- Typ grupy: wybierz pozycję Zabezpieczenia.
- Nazwa grupy: wprowadź nazwę grupy, która zawiera odwołanie do nazwy aplikacji lub środowiska.
- Opis grupy: wprowadź opis, który wyjaśnia przeznaczenie grupy.
Wybierz link Brak wybranych członków w obszarze Członkowie, aby dodać członków do grupy.
W wyświetlonym panelu wysuwanym wyszukaj utworzoną wcześniej jednostkę usługi i wybierz ją z filtrowanych wyników. Wybierz przycisk Wybierz w dolnej części panelu, aby potwierdzić wybór.
Wybierz pozycję Utwórz w dolnej części strony Nowa grupa , aby utworzyć grupę i wrócić do strony Wszystkie grupy . Jeśli nie widzisz nowej grupy na liście, zaczekaj chwilę i odśwież stronę.
Przypisywanie ról do grupy
Następnie określ, jakich ról (uprawnień) potrzebuje twoja aplikacja na temat zasobów i przypisz te role do utworzonej grupy firmy Microsoft Entra. Grupy można przypisać do roli w zakresie zasobu, grupy zasobów lub subskrypcji. W tym przykładzie pokazano, jak przypisywać role w zakresie grupy zasobów, ponieważ większość aplikacji grupuje wszystkie zasoby platformy Azure w jedną grupę zasobów.
W witrynie Azure Portal przejdź do strony Przegląd grupy zasobów zawierającej aplikację.
Wybierz z lewego menu Kontrola dostępu (IAM).
Na stronie Kontrola dostępu (zarządzanie dostępem i tożsamościami) wybierz pozycję + Dodaj , a następnie z menu rozwijanego wybierz pozycję Dodaj przypisanie roli . Strona Dodawanie przypisania roli zawiera kilka kart do konfigurowania i przypisywania ról.
Na karcie Rola użyj pola wyszukiwania, aby zlokalizować rolę, którą chcesz przypisać. Wybierz rolę, a następnie wybierz pozycję Dalej.
Na karcie Członkowie :
- W polu Przypisz dostęp do wartości wybierz pozycję Użytkownik, grupa lub jednostka usługi .
- Dla wartości Członkowie wybierz pozycję + Wybierz członków , aby otworzyć panel wysuwany Wybieranie członków .
- Wyszukaj utworzoną wcześniej grupę Microsoft Entra i wybierz ją z filtrowanych wyników. Wybierz Wybierz, aby wybrać grupę i zamknąć panel wysuwany.
- Wybierz Przejrzyj + przypisz na dole zakładki Członkowie.
Na karcie Przeglądanie i przypisywanie wybierz pozycję Przejrzyj i przypisz w dolnej części strony.
Logowanie się do platformy Azure przy użyciu narzędzi deweloperskich
Następnie zaloguj się do platformy Azure przy użyciu jednego z kilku narzędzi deweloperskich, których można użyć do przeprowadzenia uwierzytelniania w środowisku projektowym. Konto, które uwierzytelnisz, powinno również istnieć w utworzonej i skonfigurowanej wcześniej grupie Microsoft Entra.
Deweloperzy mogą używać interfejsu wiersza polecenia platformy Azure do uwierzytelniania w usłudze Microsoft Entra ID. Aplikacje korzystające z DefaultAzureCredential lub AzureCliCredential mogą następnie używać tego konta do uwierzytelniania żądań aplikacji podczas uruchamiania lokalnie.
Aby uwierzytelnić się za pomocą Azure CLI, uruchom polecenie az login. W systemie z domyślną przeglądarką internetową interfejs wiersza polecenia platformy Azure uruchamia przeglądarkę w celu uwierzytelnienia użytkownika.
az login
W przypadku systemów bez domyślnej przeglądarki internetowej polecenie az login używa przepływu uwierzytelniania kodu urządzenia. Użytkownik może również wymusić użycie przepływu kodu urządzenia przez interfejs wiersza polecenia platformy Azure, a nie uruchomienie przeglądarki, określając argument --use-device-code.
az login --use-device-code
Uwierzytelnianie w usługach platformy Azure z aplikacji
Biblioteka tożsamości platformy Azure udostępnia różne poświadczenia — implementacjeTokenCredential dostosowane do obsługi różnych scenariuszy i przepływów uwierzytelniania firmy Microsoft Entra. W kolejnych krokach pokazano, jak używać DefaultAzureCredential podczas pracy lokalnie z kontami użytkowników.
Implementowanie kodu
DefaultAzureCredential to uporządkowana sekwencja mechanizmów uwierzytelniania w usłudze Microsoft Entra ID. Każdy mechanizm uwierzytelniania jest klasą pochodzącą z klasy TokenCredential i jest nazywana poświadczeniami. W czasie wykonywania DefaultAzureCredential próbuje uwierzytelnić się przy użyciu pierwszego poświadczenia. Jeśli to poświadczenie nie może uzyskać tokenu dostępu, zostanie podjęta próba następnego poświadczenia w sekwencji itd., dopóki token dostępu nie zostanie pomyślnie uzyskany. W ten sposób aplikacja może używać różnych poświadczeń w różnych środowiskach bez konieczności pisania kodu specyficznego dla środowiska.
Aby użyć DefaultAzureCredential, dodaj pakiety @azure/identity do aplikacji. W wybranym terminalu przejdź do katalogu projektu aplikacji i uruchom następujące polecenie:
npm install @azure/identity
Dostęp do usług platformy Azure jest uzyskiwany przy użyciu wyspecjalizowanych klas klientów z różnych bibliotek klienckich zestawu Azure SDK. Te klasy i własne usługi niestandardowe powinny być zarejestrowane, aby można było uzyskiwać do nich dostęp w całej aplikacji. Wykonaj następujące kroki programowe, aby utworzyć klasę klienta i DefaultAzureCredential:
- Zaimportuj
@azure/identitypakiet. - Utwórz klienta usługi Azure i przekaż mu nowe wystąpienie
DefaultAzureCredential.
import { DefaultAzureCredential } from "@azure/identity";
import { SomeAzureServiceClient } from "@azure/arm-some-service";
const client = new SomeAzureServiceClient(new DefaultAzureCredential());