Rychlý start: Přihlášení uživatelů a volání rozhraní Microsoft Graph API z webové aplikace Node.js pomocí uzlu MSAL

V tomto rychlém startu stáhnete a spustíte ukázku kódu, která předvádí, jak se webová aplikace Node.js může přihlásit uživatele pomocí toku autorizačního kódu. Ukázka kódu také ukazuje, jak získat přístupový token pro volání rozhraní Microsoft Graph API.

Podívejte se, jak ukázka funguje pro ilustraci.

Tento rychlý start používá knihovnu Microsoft Authentication Library pro Node.js (uzel MSAL) s tokem autorizačního kódu.

Požadavky

Registrace a stažení aplikace pro rychlý start

Krok 1: Zaregistrujte si aplikaci

Tip

Postup v tomto článku se může mírně lišit v závislosti na portálu, od který začínáte.

  1. Přihlaste se do Centra pro správu Microsoft Entra jako alespoň cloudová aplikace Správa istrator.
  2. 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á.
  3. Přejděte na Identity>Applications> Registrace aplikací a vyberte Nová registrace.
  4. Zadejte název aplikace. Uživatelé vaší aplikace můžou vidět tento název a později ho můžete změnit.
  5. V části Podporované typy účtů vyberte Pouze účty v tomto organizačním adresáři.
  6. Nastavte typ identifikátoru URI přesměrování na web a hodnotu na http://localhost:3000/auth/redirecthodnotu .
  7. Vyberte Zaregistrovat.
  8. Na stránce Přehled aplikace si poznamenejte hodnotu ID aplikace (klienta) pro pozdější použití.
  9. V části Spravovat vyberte Certifikáty a tajné klíče>>klienta Nové tajné klíče klienta. Ponechte popis prázdný a výchozí vypršení platnosti a pak vyberte Přidat.
  10. Poznamenejte si hodnotu tajného klíče klienta pro pozdější použití.

Krok 2: Stažení projektu

Pokud chcete projekt spustit s webovým serverem pomocí Node.js, stáhněte si základní soubory projektu.

Krok 3: Konfigurace aplikace Node

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

Krok 4: Spuštění projektu

Spusťte projekt pomocí Node.js.

  1. Pokud chcete spustit server, spusťte v adresáři projektu následující příkazy:

    cd App
    npm install
    npm start
    
  2. Přejděte na http://localhost:3000/.

  3. 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ší kroky

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: