Rychlý start: Přihlášení uživatelů a volání rozhraní Microsoft Graph API z webové aplikace ASP.NET Core
V tomto rychlém startu se pomocí ukázkové webové aplikace ASP.NET Core dozvíte, jak se přihlásit uživatele pomocí toku autorizačního kódu a volat rozhraní Microsoft Graph API. Ukázka používá knihovnu Microsoft Authentication Library pro .NET a web Microsoft Identity ke zpracování ověřování.
Požadavky
- Účet Azure s aktivním předplatným. Pokud ho ještě nemáte, vytvořte si účet zdarma.
- Minimální požadavek sady .NET 6.0 SDK
- Visual Studio 2022 nebo Visual Studio Code
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
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
https://localhost:5001/signin-oidc
. - 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.
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-docs-code-dotnet.git
Stáhněte soubor .zip. Extrahujte ho do cesty k souboru, kde délka názvu je menší než 260 znaků.
Vytvoření a nahrání certifikátu podepsaného svým držitelem
Pomocí terminálu pomocí následujících příkazů přejděte k vytvoření certifikátu podepsaného svým držitelem v adresáři projektu.
cd ms-identity-docs-code-dotnet\web-app-aspnet\ dotnet dev-certs https -ep ./certificate.crt --trust
Vraťte se do Centra pro správu Microsoft Entra a v části Spravovat vyberte Certifikáty a tajné kódy>Nahrát certifikát.
Vyberte kartu Certifikáty (0) a pak vyberte Nahrát certifikát.
Zobrazí se podokno Nahrát certifikát . Pomocí ikony přejděte k souboru certifikátu, který jste vytvořili v předchozím kroku, a vyberte Otevřít.
Zadejte popis certifikátu, například Certifikát pro aspnet-web-app, a vyberte Přidat.
Poznamenejte si hodnotu kryptografického otisku pro použití v dalším kroku.
Konfigurace projektu
V integrovaném vývojovém prostředí otevřete složku projektu ms-identity-docs-code-dotnet\web-app-aspnet obsahující ukázku.
Otevřete appsettings.json a nahraďte obsah souboru následujícím fragmentem kódu;
{ "AzureAd": { "Instance": "https://login.microsoftonline.com/", "TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center", "ClientId": "Enter the client ID obtained from the Microsoft Entra admin center", "ClientCertificates": [ { "SourceType": "StoreWithThumbprint", "CertificateStorePath": "CurrentUser/My", "CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center" } ], "CallbackPath": "/signin-oidc" }, "DownstreamApi": { "BaseUrl": "https://graph.microsoft.com/v1.0/", "RelativePath": "me", "Scopes": [ "user.read" ] }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*" }
TenantId
– Identifikátor tenanta, ve kterém je aplikace zaregistrovaná. Text v uvozovkách nahraďte dříve zaznamenaným textemDirectory (tenant) ID
ze stránky přehledu registrované aplikace.ClientId
– Identifikátor aplikace, označovaný také jako klient. Nahraďte text v uvozovkáchApplication (client) ID
hodnotou, která byla zaznamenána dříve na stránce přehledu registrované aplikace.ClientCertificates
– Certifikát podepsaný svým držitelem se používá k ověřování v aplikaci. Nahraďte textCertificateThumbprint
kryptografickým otiskem certifikátu, který byl dříve zaznamenán.
Spuštění aplikace a přihlášení
V adresáři projektu pomocí terminálu zadejte následující příkaz;
dotnet run
https
Zkopírujte adresu URL, která se zobrazí v terminálu,https://localhost:5001
například a vložte ji do prohlížeče. Doporučujeme použít soukromou nebo anonymní relaci prohlížeče.Postupujte podle pokynů a zadejte potřebné podrobnosti pro přihlášení pomocí účtu Microsoft. Požadujete, abyste zadali e-mailovou adresu, aby vám bylo možné poslat jednorázové heslo. Po zobrazení výzvy zadejte kód.
Aplikace požaduje oprávnění k údržbě přístupu k datům, ke kterým jste jim udělili přístup, a k přihlášení a čtení profilu. Zvolte Přijmout.
Zobrazí se následující snímek obrazovky, který označuje, že jste se přihlásili k aplikaci a že jste z rozhraní Microsoft Graph API přistupovali k podrobnostem profilu.
Odhlaste se z aplikace
- Vyhledejte odkaz Odhlásit se v pravém horním rohu stránky a vyberte ho.
- Zobrazí se výzva k výběru účtu, ze kterém se chcete odhlásit. Vyberte účet, který jste použili k přihlášení.
- Zobrazí se zpráva s oznámením, že jste se odhlásili. Teď můžete okno prohlížeče zavřít.
Související obsah
- Naučte se vytvářet tuto ASP.NET webovou aplikaci pomocí série Kurz: Registrace aplikace na platformě Microsoft Identity Platform.
- Rychlý start: Ochrana webového rozhraní API ASP.NET Core pomocí platformy Microsoft Identity Platform
- Rychlý start: Nasazení webové aplikace ASP.NET do služby Aplikace Azure Service