Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
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
- Visual Studio Code
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.
- Interfejs wiersza polecenia platformy Azure
- Azure CLI dla deweloperów
- Azure PowerShell
- Visual Studio Code
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 implementacje TokenCredential, które obsługują różne scenariusze i przepływy uwierzytelniania Microsoft Entra. W poniższych krokach pokazano, jak używać poświadczeń defaultAzureCredential lub określonego narzędzia programistycznego podczas pracy z kontami użytkowników lokalnie.
Wskazówka
Kiedy zespół używa wielu narzędzi programistycznych do uwierzytelniania w Azure, preferuj lokalne wystąpienie DefaultAzureCredential zoptymalizowane pod kątem lokalnego środowiska deweloperskiego zamiast poświadczeń specyficznych dla narzędzi.
Implementowanie kodu
Dodaj pakiet @azure/identity do aplikacji.
npm install @azure/identityUwaga / Notatka
Jeśli chcesz użyć
VisualStudioCodeCredential, musisz również zainstalować pakiet pluginu @azure/identity-vscode. Następnie jawnie załaduj poświadczenie. Aby zapoznać się z przykładem, zobacz plik README @azure/identity-vscode.Wybierz jedną z implementacji poświadczeń na podstawie danego scenariusza.
- Użyj poświadczeń specyficznych dla narzędzia programistycznego: ta opcja jest najlepsza w przypadku scenariuszy pojedynczej osoby lub jednego narzędzia.
- Użyj poświadczeń dostępnych do użycia w dowolnym narzędziu programistycznym: ta opcja jest najlepsza w przypadku projektów open source i różnych zespołów narzędzi.
Używanie poświadczeń specyficznych dla narzędzia programistycznego
Przekaż wystąpienie TokenCredential odpowiadające określonemu narzędziu programistycznemu do konstruktora klienta usługi platformy Azure, takie jak AzureCliCredential.
import { AzureCliCredential } from "@azure/identity";
import { BlobServiceClient } from "@azure/storage-blob";
const credential = new AzureCliCredential();
const client = new BlobServiceClient(
"https://<storage-account-name>.blob.core.windows.net",
credential
);
Używanie poświadczeń dostępnych do użycia w dowolnym narzędziu programistycznym
Użyj wystąpienia DefaultAzureCredential, które jest zoptymalizowane do wszystkich lokalnych narzędzi programistycznych. W tym przykładzie zmienna środowiskowa AZURE_TOKEN_CREDENTIALS jest ustawiona na dev. Aby uzyskać więcej informacji, zobacz Wykluczanie kategorii typu poświadczeń.
import { DefaultAzureCredential } from "@azure/identity";
import { BlobServiceClient } from "@azure/storage-blob";
// Set environment variable AZURE_TOKEN_CREDENTIALS to "dev"
const credential = new DefaultAzureCredential({
requiredEnvVars: ["AZURE_TOKEN_CREDENTIALS"]
});
const client = new BlobServiceClient(
"https://<storage-account-name>.blob.core.windows.net",
credential
);