Rövid útmutató: Jelentkezzen be a felhasználókba, és hívja meg a Microsoft Graph API-t egy ASP.NET Core-webalkalmazásból
Ez a rövid útmutató egy minta ASP.NET Core-webalkalmazással mutatja be, hogyan jelentkezhet be a felhasználókba az engedélyezési kód folyamatával , és hogyan hívhatja meg a Microsoft Graph API-t. A minta a Microsoft Authentication Library for .NET és a Microsoft Identity Web használatával kezeli a hitelesítést.
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Ha még nem rendelkezik ilyen fiókkal, hozzon létre ingyenes fiókot.
- A .NET 6.0 SDK minimális követelménye
- Visual Studio 2022 vagy Visual Studio Code
Az alkalmazás és a rekordazonosítók regisztrálása
A regisztráció befejezéséhez adjon meg egy nevet az alkalmazásnak, és adja meg a támogatott fióktípusokat. A regisztrációt követően az Alkalmazás áttekintése panel megjeleníti az alkalmazás forráskódjában szükséges azonosítókat.
Jelentkezzen be a Microsoft Entra felügyeleti központjába.
Ha több bérlőhöz is hozzáfér, a felső menü Gépház ikonjával válthat arra a bérlőre, amelyben regisztrálni szeretné az alkalmazást a Könyvtárak + előfizetések menüből.
Keresse meg az Identitásalkalmazások>> Alkalmazásregisztrációk lehetőséget, és válassza az Új regisztráció lehetőséget.
Adja meg az alkalmazás nevét, például az identity-client-web-app nevet.
Támogatott fióktípusok esetén csak ebben a szervezeti címtárban válassza a Fiókok lehetőséget. A különböző fióktípusokkal kapcsolatos információkért válassza a Súgó kiválasztása lehetőséget.
Válassza ki a pénztárgépet.
A regisztráció befejezésekor megjelenik az alkalmazás Áttekintés panelje. Jegyezze fel a címtár (bérlő) azonosítóját és az alkalmazás forráskódjában használandó alkalmazás-(ügyfél-) azonosítót .
Feljegyzés
A támogatott fióktípusok módosíthatók az alkalmazás által támogatott fiókok módosításával.
Platformátirányítási URI hozzáadása
Ha meg szeretné adni az alkalmazás típusát az alkalmazásregisztrációhoz, kövesse az alábbi lépéseket:
- A Kezelés területen válassza a Hitelesítés lehetőséget.
- A Platformkonfigurációk lapon válassza a Platform hozzáadása, majd a Webes lehetőség lehetőséget.
- Az átirányítási URI-khoz írja be a következőt
https://localhost:5001/signin-oidc
: - Az előtérbeli bejelentkezési URL-cím alatt adja meg a kijelentkezéshez szükséges adatokat
https://localhost:5001/signout-callback-oidc
. - Válassza a Konfigurálás lehetőséget a módosítások mentéséhez.
A mintaalkalmazás klónozása vagy letöltése
A mintaalkalmazás beszerzéséhez klónozhatja a GitHubról, vagy letöltheti .zip fájlként.
A minta klónozásához nyisson meg egy parancssort, és keresse meg a projektet, és írja be a következő parancsot:
git clone https://github.com/Azure-Samples/ms-identity-docs-code-dotnet.git
Töltse le a .zip fájlt. Bontsa ki egy fájl elérési útjára, ahol a név hossza kevesebb, mint 260 karakter.
Önaláírt tanúsítvány létrehozása és feltöltése
A terminál használatával az alábbi parancsokkal hozhat létre önaláírt tanúsítványt a projektkönyvtárban.
cd ms-identity-docs-code-dotnet\web-app-aspnet\ dotnet dev-certs https -ep ./certificate.crt --trust
Térjen vissza a Microsoft Entra felügyeleti központjába, és a Kezelés területen válassza a Tanúsítványok > titkos kódok>tanúsítvány feltöltése lehetőséget.
Válassza a Tanúsítványok (0) lapot, majd a Tanúsítvány feltöltése lehetőséget.
Megjelenik a Tanúsítvány feltöltése panel. Az ikonnal lépjen az előző lépésben létrehozott tanúsítványfájlra, és válassza a Megnyitás lehetőséget.
Adja meg a tanúsítvány leírását, például az aspnet-webalkalmazás tanúsítványát, és válassza a Hozzáadás lehetőséget.
Jegyezze fel az ujjlenyomat értékét a következő lépésben való használatra.
A projekt konfigurálása
Az IDE-ben nyissa meg a mintát tartalmazó ms-identity-docs-code-dotnet\web-app-aspnet nevű projektmappát.
Nyissa meg appsettings.json , és cserélje le a fájl tartalmát a következő kódrészletre;
{ "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
- Annak a bérlőnek az azonosítója, ahol az alkalmazás regisztrálva van. Cserélje le az idézőjelek szövegét aDirectory (tenant) ID
regisztrált alkalmazás áttekintő oldaláról korábban rögzített szövegre.ClientId
- Az alkalmazás azonosítója, más néven az ügyfél. Cserélje le az idézőjelek szövegét aApplication (client) ID
regisztrált alkalmazás áttekintő oldaláról korábban rögzített értékre.ClientCertificates
- Az alkalmazás hitelesítéséhez önaláírt tanúsítványt használunk. Cserélje le aCertificateThumbprint
szövegrészt a korábban rögzített tanúsítvány ujjlenyomatára.
Az alkalmazás futtatása és bejelentkezés
A projektkönyvtárban a terminál használatával írja be a következő parancsot;
dotnet run
Másolja ki például a
https
terminálban megjelenő URL-címet,https://localhost:5001
és illessze be egy böngészőbe. Javasoljuk, hogy privát vagy inkognitó böngésző munkamenetet használjon.Kövesse a lépéseket, és adja meg a microsoftos fiókjával való bejelentkezéshez szükséges adatokat. A rendszer kéri, hogy adjon meg egy e-mail-címet, hogy egyszeri pin-kód legyen elküldve Önnek. Amikor a rendszer kéri, adja meg a kódot.
Az alkalmazás engedélyt kér, hogy fenntartsa a hozzáférést azokhoz az adatokhoz, amelyekhez hozzáférést adott, valamint hogy bejelentkezhessen, és elolvassa a profilját. Válassza az Elfogadás lehetőséget.
Megjelenik a következő képernyőkép, amely azt jelzi, hogy bejelentkezett az alkalmazásba, és a Microsoft Graph API-ból fért hozzá a profiladataihoz.
Kijelentkezés az alkalmazásból
- Keresse meg a kijelentkezés hivatkozást a lap jobb felső sarkában, és jelölje ki.
- A rendszer kéri, hogy válasszon ki egy fiókot, amelyből ki szeretne jelentkezni. Válassza ki a bejelentkezéshez használt fiókot.
- Megjelenik egy üzenet, amely jelzi, hogy kijelentkezett. Most már bezárhatja a böngészőablakot.
Kapcsolódó tartalom
- Ebből a ASP.NET webalkalmazásból a következő oktatóanyagból tájékozódhat: Alkalmazás regisztrálása a Microsoft Identitásplatform.
- Rövid útmutató: A ASP.NET Core webes API védelme a Microsoft Identitásplatform.
- Rövid útmutató: ASP.NET webalkalmazás üzembe helyezése Azure-alkalmazás Szolgáltatásban