Rychlý start: Přihlášení uživatelů a volání rozhraní Microsoft Graph API z webové aplikace Node.js
V tomto rychlém startu se pomocí ukázkové webové aplikace Node.js dozvíte, jak přihlásit uživatele pomocí toku autorizačního kódu a volat rozhraní Microsoft Graph API. Ukázka používá uzel MSAL ke zpracování ověřování.
Požadavky
- Předplatné Azure. Vytvořte si bezplatné předplatné Azure.
- Node.js
- Visual Studio Code nebo jiný editor kódu
Registrace identifikátorů aplikace a záznamů
K dokončení registrace zadejte název aplikace a zadejte podporované typy účtů. Po registraci se v podokně Přehled aplikace zobrazí identifikátory potřebné ve zdrojovém kódu aplikace.
Přihlaste se do Centra pro správu Microsoft Entra.
Pokud máte přístup k více tenantům, pomocí ikony Nastavení v horní nabídce přepněte na tenanta, ve kterém chcete aplikaci zaregistrovat z nabídky Adresáře a předplatná.
Přejděte na Aplikace> identit>Registrace aplikací vyberte Nová registrace.
Zadejte název aplikace, například identity-client-web-app.
U podporovaných typů účtů vyberte Pouze účty v tomto organizačním adresáři. Pokud chcete získat informace o různých typech účtů, vyberte možnost Nápověda pro výběr .
Vyberte Zaregistrovat.
Po dokončení registrace se zobrazí podokno Přehled aplikace. Poznamenejte si ID adresáře (tenanta) a ID aplikace (klienta), které se má použít ve zdrojovém kódu aplikace.
Poznámka:
Podporované typy účtů je možné změnit odkazem na úpravu účtů podporovaných aplikací.
Přidání identifikátoru URI přesměrování platformy a vytvoření tajného klíče klienta
Pokud chcete zadat typ aplikace pro registraci aplikace, postupujte takto:
- V části Spravovat vyberte Ověřování.
- Na stránce Konfigurace platformy vyberte Přidat platformu a pak vyberte Možnost Web.
- Pro identifikátory URI přesměrování zadejte
http://localhost:3000/auth/redirect
. - V části Adresa URL odhlášení z front kanálu zadejte
https://localhost:5001/signout-callback-oidc
pro odhlášení. - Výběrem možnosti Konfigurovat uložte změny.
- V části Spravovat vyberte Certifikáty a tajné klíče>>klienta Nové tajné klíče klienta. Zvolte popis a pak vyberte Přidat.
- Poznamenejte si hodnotu tajného klíče klienta pro pozdější použití. Tato hodnota se zobrazí jenom jednou.
Klonování nebo stažení ukázkové aplikace
Pokud chcete získat ukázkovou aplikaci, můžete ji buď naklonovat z GitHubu, nebo si ji stáhnout jako soubor .zip .
Pokud chcete ukázku naklonovat, otevřete příkazový řádek a přejděte do umístění, kam chcete projekt vytvořit, a zadejte následující příkaz:
git clone https://github.com/Azure-Samples/ms-identity-node.git
Stáhněte soubor .zip. Extrahujte ho do cesty k souboru, kde délka názvu je menší než 260 znaků.
Konfigurace projektu
Extrahujte projekt, otevřete složku ms-identity-node-main a pak otevřete soubor .env ve složce Aplikace . Výše uvedené hodnoty nahraďte následujícím způsobem:
Proměnná | Popis | Příklady |
---|---|---|
Enter_the_Cloud_Instance_Id_Here |
Cloudová instance Azure, ve které je vaše aplikace zaregistrovaná | https://login.microsoftonline.com/ (včetně koncového lomítka) |
Enter_the_Tenant_Info_here |
ID tenanta nebo primární doména | contoso.microsoft.com nebo aaaabbbb-0000-cccc-1111-dddd2222eeee |
Enter_the_Application_Id_Here |
ID klienta aplikace, kterou jste zaregistrovali | 00001111-aaaa-2222-bbbb-3333cccc4444 |
Enter_the_Client_Secret_Here |
Tajný klíč klienta aplikace, kterou jste zaregistrovali | A1b-C2d_E3f.H4i,J5k?L6m!N7o-P8q_R9s.T0u |
Enter_the_Graph_Endpoint_Here |
Cloudová instance rozhraní Microsoft Graph API, kterou bude vaše aplikace volat | https://graph.microsoft.com/ (včetně koncového lomítka) |
Enter_the_Express_Session_Secret_Here |
Náhodný řetězec znaků sloužících k podepsání souboru cookie relace Expressu | A1b-C2d_E3f.H4... |
Soubor by měl vypadat nějak takto:
CLOUD_INSTANCE=https://login.microsoftonline.com/
TENANT_ID=aaaabbbb-0000-cccc-1111-dddd2222eeee
CLIENT_ID=00001111-aaaa-2222-bbbb-3333cccc4444
CLIENT_SECRET=A1b-C2d_E3f.H4...
REDIRECT_URI=http://localhost:3000/auth/redirect
POST_LOGOUT_REDIRECT_URI=http://localhost:3000
GRAPH_API_ENDPOINT=https://graph.microsoft.com/
EXPRESS_SESSION_SECRET=6DP6v09eLiW7f1E65B8k
Spuštění aplikace a přihlášení
Spusťte projekt pomocí Node.js.
Pokud chcete spustit server, spusťte v adresáři projektu následující příkazy:
cd App npm install npm start
Přejděte na
http://localhost:3000/
.Výběrem možnosti Přihlásit se spusťte proces přihlášení.
Při prvním přihlášení se zobrazí výzva k zadání souhlasu, abyste aplikaci povolili přihlášení a přístup k vašemu profilu. Po úspěšném přihlášení budete přesměrováni zpět na domovskou stránku aplikace.
Více informací
Jak ukázka funguje
Ukázka hostuje webový server na místním hostiteli na portu 3000. Když webový prohlížeč přistupuje k této adrese, aplikace vykreslí domovskou stránku. Jakmile uživatel vybere možnost Přihlásit se, aplikace přesměruje prohlížeč na přihlašovací obrazovku Microsoft Entra prostřednictvím adresy URL vygenerované knihovnou uzlů MSAL. Po vyjádření souhlasu uživatele prohlížeč přesměruje uživatele zpět na domovskou stránku aplikace spolu s ID a přístupovým tokenem.
Uzel MSAL
Knihovna uzlů MSAL přihlásí uživatele a požádá o tokeny, které se používají pro přístup k rozhraní API chráněnému platformou Microsoft Identity Platform. Nejnovější verzi si můžete stáhnout pomocí Node.js Správce balíčků (npm):
npm install @azure/msal-node
Další krok
Další informace získáte vytvořením webové aplikace ASP.NET Core, která přihlašuje uživatele v následující sérii kurzů s více částmi: