Kurz: Příprava tenanta zákazníka na autorizaci aplikace démona Node.js

V tomto kurzu zjistíte, jak získat přístupový token a pak volat webové rozhraní API v aplikaci démona Node.js. Aplikaci démona klienta povolíte, aby získala přístupový token pomocí vlastní identity. Uděláte to tak, že nejprve zaregistrujete aplikaci ve svém Microsoft Entra ID pro tenanta zákazníka.

V tomto kurzu:

  • Zaregistrujte webové rozhraní API a nakonfigurujte oprávnění aplikace v centru pro správu Microsoft Entra.
  • Zaregistrujte aplikaci démon klienta a udělte jí oprávnění v centru pro správu Microsoft Entra.
  • Vytvořte tajný klíč klienta pro aplikaci démona v centru pro správu Microsoft Entra.

Pokud jste už zaregistrovali aplikaci démona klienta a webové rozhraní API v centru pro správu Microsoft Entra, můžete přeskočit kroky v tomto kurzu a pak pokračovat k získání přístupového tokenu pro volání rozhraní API.

Požadavky

Registrace aplikace webového rozhraní API

  1. Přihlaste se k centru pro správu Microsoft Entra jako aspoň vývojář aplikací.

  2. Pokud máte přístup k více tenantům, přepněte na tenanta zákazníka pomocí filtru Adresáře a předplatná v horní nabídce.

  3. Přejděte naAplikace>identit>Registrace aplikací.

  4. Vyberte + Nová registrace.

  5. Na stránce Zaregistrovat aplikaci , která se zobrazí, zadejte informace o registraci aplikace:

    1. V části Název zadejte smysluplný název aplikace, který se zobrazí uživatelům aplikace, například ciam-ToDoList-api.

    2. V části Podporované typy účtů vyberte Účty pouze v tomto organizačním adresáři.

  6. Výběrem možnosti Registrovat aplikaci vytvořte.

  7. Po dokončení registrace se zobrazí podokno Přehled aplikace. Poznamenejte si ID adresáře (tenanta) a ID aplikace (klienta), které se mají použít ve zdrojovém kódu aplikace.

Konfigurace aplikačních rolí

Rozhraní API musí publikovat minimálně jednu roli aplikace, která se označuje také jako oprávnění aplikace, aby klientské aplikace získaly přístupový token jako samy. Oprávnění aplikací jsou typem oprávnění, která by rozhraní API měla publikovat, když chtějí klientským aplikacím umožnit úspěšné ověření jako oni sami a nepotřebují přihlašovat uživatele. Chcete-li publikovat oprávnění aplikace, postupujte takto:

  1. Na stránce Registrace aplikací vyberte aplikaci, kterou jste vytvořili (například ciam-ToDoList-api), a otevřete její stránku Přehled.

  2. V části Spravovat vyberte Role aplikací.

  3. Vyberte Create app role (Vytvořit roli aplikace), zadejte následující hodnoty a pak vyberte Apply (Použít), aby se změny uložily:

    Vlastnost Hodnota
    Zobrazované jméno ToDoList.Read.All
    Povolené typy členů Aplikace
    Hodnota ToDoList.Read.All
    Description Povolit aplikaci číst seznam úkolů každého uživatele pomocí todoListApi
  4. Znovu vyberte Vytvořit aplikační roli , zadejte následující hodnoty pro druhou aplikační roli a pak vyberte Použít , aby se změny uložily:

    Vlastnost Hodnota
    Zobrazované jméno ToDoList.ReadWrite.All
    Povolené typy členů Aplikace
    Hodnota ToDoList.ReadWrite.All
    Description Povolit aplikaci čtení a zápis seznamu úkolů každého uživatele pomocí ToDoListApi

Konfigurace deklarace identity tokenu idtyp

Tokeny vrácené identitou Microsoftu se udržují menší, aby se zajistil optimální výkon ze strany klientů, kteří je požadují. V důsledku toho se v tokenu ve výchozím nastavení několik deklarací identity nenachází a je potřeba je požádat o konkrétní žádost pro jednotlivé aplikace. Pro tuto aplikaci zahrnete volitelnou deklaraci identity idtyp , která webovému rozhraní API pomůže určit, jestli je tokenem aplikace nebo tokenem app+user. I když se ke stejnému účelu dá použít kombinace deklarací identity scp a rolí , je použití deklarace identity idtyp nejjednodušším způsobem, jak token aplikace a token app+user oddělit. Například hodnota této deklarace identity je app , pokud je token tokenem pouze pro aplikaci.

Ke konfiguraci volitelné deklarace identity idtyp použijte následující postup:

  1. V části Spravovat vyberte Konfigurace tokenu.

  2. Vyberte Přidat volitelnou deklaraci identity.

  3. V části Typ tokenu zvolte Přístup.

  4. Vyberte volitelný idtyp deklarace identity.

  5. Vyberte Přidat a uložte změny.

Registrace aplikace démona

Pokud chcete aplikaci umožnit přihlašování uživatelů pomocí Microsoft Entra, musí Microsoft Entra ID pro zákazníky vědět o aplikaci, kterou vytvoříte. Registrace aplikace vytvoří vztah důvěryhodnosti mezi aplikací a Microsoft Entra. Když zaregistrujete aplikaci, externí ID vygeneruje jedinečný identifikátor označovaný jako ID aplikace (klienta), což je hodnota používaná k identifikaci vaší aplikace při vytváření žádostí o ověření.

Následující postup ukazuje, jak zaregistrovat aplikaci v Centru pro správu Microsoft Entra:

  1. Přihlaste se k centru pro správu Microsoft Entra jako aspoň vývojář aplikací.

  2. Pokud máte přístup k více tenantům, přepněte na tenanta zákazníka pomocí filtru Adresáře a předplatná v horní nabídce.

  3. Přejděte naAplikace>identit>Registrace aplikací.

  4. Vyberte + Nová registrace.

  5. Na stránce Zaregistrovat aplikaci , která se zobrazí;

    1. Zadejte smysluplný název aplikace, který se zobrazí uživatelům aplikace, například ciam-client-app.
    2. V části Podporované typy účtů vyberte Účty pouze v tomto organizačním adresáři.
  6. Vyberte Zaregistrovat.

  7. Po úspěšné registraci se zobrazí podokno Přehled aplikace. Poznamenejte si ID aplikace (klienta), které se má použít ve zdrojovém kódu aplikace.

Vytvoření tajného klíče klienta

Vytvořte tajný klíč klienta pro zaregistrovanou aplikaci. Aplikace používá tajný klíč klienta k prokázání své identity při žádosti o tokeny.

  1. Na stránce Registrace aplikací vyberte aplikaci, kterou jste vytvořili (například ciam-client-app), a otevřete její stránku Přehled.
  2. V části Spravovat vyberte Tajné kódy certifikátů&.
  3. Vyberte Nový tajný klíč klienta.
  4. Do pole Popis zadejte popis tajného klíče klienta (například ciam app secret).
  5. V části Konec platnosti vyberte dobu platnosti tajného kódu (podle pravidel zabezpečení vaší organizace) a pak vyberte Přidat.
  6. Poznamenejte si hodnotu tajného kódu. Tuto hodnotu použijete ke konfiguraci v pozdějším kroku.

Poznámka

Hodnota tajného kódu se po přechodu ze stránky Certifikáty a tajné kódy znovu nezobrazí a není možné ji žádným způsobem načíst, proto ji nezapomeňte zaznamenat.
Kvůli rozšířenému zabezpečení zvažte použití certifikátů místo tajných klíčů klientů.

Udělení oprávnění rozhraní API k aplikaci démona

  1. Na stránce Registrace aplikací vyberte aplikaci, kterou jste vytvořili, například ciam-client-app.

  2. V části Spravovat vyberte Oprávnění rozhraní API.

  3. V části Nakonfigurovaná oprávnění vyberte Přidat oprávnění.

  4. Vyberte kartu Moje rozhraní API .

  5. V seznamu rozhraní API vyberte rozhraní API, například ciam-ToDoList-api.

  6. Vyberte možnost Oprávnění aplikace . Tuto možnost vybereme, protože se aplikace přihlašuje jako sama, ne jako uživatelé.

  7. V seznamu oprávnění vyberte TodoList.Read.All, ToDoList.ReadWrite.All (v případě potřeby použijte vyhledávací pole).

  8. Vyberte tlačítko Přidat oprávnění .

  9. V tuto chvíli jste oprávnění přiřadili správně. Vzhledem k tomu, že aplikace démona neumožňuje uživatelům s ní pracovat, nemůžou s těmito oprávněními souhlasit samotní uživatelé. Pokud chcete tento problém vyřešit, musíte jako správce udělit souhlas s těmito oprávněními jménem všech uživatelů v tenantovi:

    1. Vyberte Udělit souhlas správce pro <název> vašeho tenanta a pak vyberte Ano.
    2. Vyberte Aktualizovat a pak ověřte, že pro <název> vašeho tenanta je v části Stav u obou oprávnění uvedeno Uděleno.

Shromáždění podrobností o registraci aplikace

V dalším kroku připravíte aplikaci démona. Ujistěte se, že máte následující podrobnosti:

  • ID aplikace (klienta) aplikace démon klienta, kterou jste zaregistrovali.
  • Subdoména adresáře (tenanta), ve které jste zaregistrovali aplikaci démona. Pokud nemáte název tenanta, přečtěte si, jak si přečíst podrobnosti o tenantovi.
  • Hodnota tajného klíče aplikace pro aplikaci démona, kterou jste vytvořili.
  • ID aplikace (klienta) aplikace webového rozhraní API, kterou jste zaregistrovali.

Další kroky

V dalším kurzu připravíte aplikaci démona Node.js.