Sdílet prostřednictvím


Přihlášení uživatelů k ukázkové webové aplikaci ASP.NET Core v externím tenantovi

Tento průvodce postupy používá ukázkovou webovou aplikaci ASP.NET Core k zobrazení základů moderního ověřování pomocí knihovny Microsoft Authentication Library pro .NET a webu Microsoft Identity pro ASP.NET Core pro zpracování ověřování.

V tomto článku zaregistrujete webovou aplikaci v Centru pro správu Microsoft Entra a vytvoříte přihlášení a odhlásíte tok uživatele. Webovou aplikaci přidružíte k toku uživatele, stáhnete a aktualizujete ukázkovou webovou aplikaci ASP.NET Core pomocí vlastních podrobností o externím tenantovi. Nakonec spustíte a otestujete ukázkovou webovou aplikaci.

Požadavky

Registrace webové aplikace

Pokud chcete aplikaci umožnit přihlášení uživatelů pomocí Microsoft Entra, Microsoft Entra Externí ID musí být informována 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žitá k identifikaci aplikace při vytváření žádostí o ověření.

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

  1. Přihlaste se do Centra pro správu Microsoft Entra jako alespoň vývojář aplikací.

  2. Pokud máte přístup k více tenantům, pomocí ikony Nastavení v horní nabídce přepněte do externího tenanta z nabídky Adresáře a předplatná.

  3. Přejděte k aplikacím> 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 Pouze účty 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.

Definování platformy a adres URL

Pokud chcete zadat typ aplikace pro registraci aplikace, postupujte takto:

  1. V části Spravovat vyberte Ověřování.
  2. Na stránce Konfigurace platformy vyberte Přidat platformu a pak vyberte Možnost Web.
  3. Pro identifikátory URI přesměrování zadejte https://localhost:7274/signin-oidc.
  4. V části Adresa URL odhlášení z front kanálu zadejte https://localhost:7274/signout-callback-oidc pro odhlášení.
  5. Výběrem možnosti Konfigurovat uložte změny.

Povolení implicitních a hybridních toků

Aplikace, kterou sestavíte, používá implicitní tok, který je potřeba povolit.

  1. V části Implicitní udělení a hybridní toky vyberte možnost tokenů ID.
  2. Zvolte Uložit.

Přidání tajného klíče klienta aplikace

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 Certifikáty a tajné kódy.
  3. Vyberte Nový tajný klíč klienta.
  4. Do pole Popis zadejte popis tajného klíče klienta (například tajný klíč klienta ciam).
  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 pro konfiguraci v pozdějším kroku. Hodnota tajného kódu se znovu nezobrazí a po přechodu z certifikátů a tajných kódů se nezobrazí žádným způsobem. Ujistěte se, že jste ho nahráli.

Jakmile aplikaci zaregistrujete, přiřadí se mu oprávnění User.Read . Vzhledem k tomu, že je tenant externím tenantem, nemohou vlastní uživatelé zákazníka s tímto oprávněním souhlasit. Jako správce musíte udělit souhlas s tímto oprávněním jménem všech uživatelů v tenantovi:

  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 oprávnění rozhraní API.

    1. Vyberte Udělit souhlas správce pro <název> vašeho tenanta a pak vyberte Ano.
    2. Vyberte Aktualizovat a ověřte, že se pro <název> vašeho tenanta zobrazuje stav oprávnění.

Vytvoření toku uživatele

Pokud chcete vytvořit tok uživatele, který může zákazník použít k přihlášení nebo registraci aplikace, postupujte podle těchto kroků.

  1. Přihlaste se do Centra pro správu Microsoft Entra jako alespoň správce toku externího ID uživatele.

  2. Pokud máte přístup k více tenantům, pomocí ikony Nastavení v horní nabídce přepněte do externího tenanta z nabídky Adresáře a předplatná.

  3. Přejděte k> tokům identity externích>identit uživatelů.

  4. Vyberte + Nový tok uživatele.

  5. Na stránce Vytvořit:

    1. Zadejte název toku uživatele, například SignInSignUpSample.

    2. V seznamu zprostředkovatelů identity vyberte E-mailové účty. Tento zprostředkovatel identity umožňuje uživatelům přihlásit se nebo zaregistrovat pomocí jejich e-mailové adresy.

      Poznámka:

      Další zprostředkovatelé identity se tady zobrazí až po nastavení federace s nimi. Pokud například nastavíte federaci s Googlem nebo Facebookem, budete tady moct vybrat další zprostředkovatele identity.

    3. V části E-mailové účty můžete vybrat jednu z těchto dvou možností. Pro účely tohoto kurzu vyberte E-mail s heslem.

      • E-mail s heslem: Umožňuje novým uživatelům zaregistrovat se a přihlásit se pomocí e-mailové adresy jako přihlašovací jméno a heslo jako jejich první přihlašovací údaje.
      • Jednorázové heslo e-mailu: Umožňuje novým uživatelům zaregistrovat se a přihlásit se pomocí e-mailové adresy jako přihlašovací jméno a jednorázové heslo jako jejich první přihlašovací údaje. Aby byla tato možnost dostupná na úrovni toku uživatele, musí být na úrovni tenanta povolená jednorázová hesla e-mailu všech zprostředkovatelů>identity.
    4. V části Atributy uživatele zvolte atributy, které chcete shromáždit od uživatele při registraci. Výběrem možnosti Zobrazit více můžete zvolit atributy a deklarace identity pro zemi/oblast, zobrazované jméno a PSČ. Vyberte OK. (Uživatelům se při první registraci zobrazí výzva pouze k zadání atributů.)

  6. Vyberte Vytvořit. Nový tok uživatele se zobrazí v seznamu Toky uživatele. V případě potřeby aktualizujte stránku.

Pokud chcete povolit samoobslužné resetování hesla, postupujte podle pokynů v článku Povolení samoobslužného resetování hesla.

Přidružení webové aplikace k toku uživatele

Aby uživatelé zákazníka viděli prostředí registrace nebo přihlašování, když používají vaši aplikaci, musíte aplikaci přidružit k toku uživatele. I když k toku uživatele může být přidruženo mnoho aplikací, jedna aplikace může být přidružena pouze k jednomu toku uživatele.

  1. V nabídce bočního panelu vyberte Možnost Identita.

  2. Vyberte externí identity a pak toky uživatelů.

  3. Na stránce Toky uživatele vyberte název toku uživatele, který jste vytvořili dříve, například SignInSignUpSample.

  4. V části Použít vyberte Aplikace.

  5. Vyberte Přidat aplikaci.

  6. Vyberte aplikaci ze seznamu, jako je ciam-client-app , nebo pomocí vyhledávacího pole vyhledejte aplikaci a pak ji vyberte.

  7. Zvolte Vybrat.

Jakmile aplikaci přidružíte k toku uživatele, můžete tok uživatele otestovat simulací registrace nebo přihlašování uživatele k aplikaci z Centra pro správu Microsoft Entra. Uděláte to tak, že použijete kroky v části Otestování toku registrace a přihlášení uživatele.

Klonování nebo stažení ukázkové webové 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-ciam-dotnet-tutorial.git
    
  • Stáhněte soubor .zip. Extrahujte ho do cesty k souboru, kde délka názvu je menší než 260 znaků.

Konfigurace aplikace

  1. Přejděte do kořenové složky ukázky, kterou jste stáhli, a adresář obsahující ukázkovou aplikaci ASP.NET Core:

    cd 1-Authentication\1-sign-in-aspnet-core-mvc
    
  2. Otevřete soubor appsettings.json.

  3. V autoritě ji vyhledejte Enter_the_Tenant_Subdomain_Here a nahraďte subdoménou vašeho tenanta. Pokud je například primární doména caseyjensen@onmicrosoft.comvašeho tenanta , hodnota, kterou byste měli zadat, je casyjensen.

  4. Enter_the_Application_Id_Here Najděte hodnotu a nahraďte ji ID aplikace (clientId) aplikace, kterou jste zaregistrovali v Centru pro správu Microsoft Entra.

  5. Nahraďte Enter_the_Client_Secret_Here hodnotou tajného klíče klienta, kterou jste nastavili v části Přidat tajný klíč klienta aplikace.

Spuštění ukázky kódu

  1. Z prostředí nebo příkazového řádku spusťte následující příkazy:

    dotnet run
    
  2. Otevřete webový prohlížeč a přejděte na https://localhost:7274.

  3. Přihlaste se pomocí účtu zaregistrovaného do externího tenanta.

  4. Po přihlášení se zobrazované jméno zobrazí vedle tlačítka Odhlásit se, jak je znázorněno na následujícím snímku obrazovky.

    Snímek obrazovky s přihlášením k webové aplikaci ASP.NET Core

  5. Pokud se chcete odhlásit z aplikace, vyberte tlačítko Odhlásit se.

Viz také