Rövid útmutató: Bejelentkezés hozzáadása a Microsofttal egy ASP.NET Core-webalkalmazáshoz

Üdvözöljük! Valószínűleg nem ez az a lap, amire számított. Amíg dolgozunk a javításon, ez a hivatkozás a megfelelő cikkre viszi:

Rövid útmutató: Bejelentkezés hozzáadása a Microsofttal egy ASP.NET Core-webalkalmazáshoz

Elnézést kérünk a kellemetlenségért, és köszönjük türelmét, amíg dolgozunk a probléma megoldásán.

Ebben a rövid útmutatóban letölthet és futtathat egy kódmintát, amely bemutatja, hogy egy ASP.NET Core-webalkalmazás hogyan tud bejelentkezni a microsoft Entra-szervezetek felhasználóiba.

1. lépés: Az alkalmazás konfigurálása az Azure Portalon

Az ebben a rövid útmutatóban szereplő kódminta működéséhez:

  • Átirányítási URI esetén írja be https://localhost:44321/ és https://localhost:44321/signin-oidc.
  • Az előtérbeli bejelentkezési URL-címhez írja be a következőthttps://localhost:44321/signout-oidc: .

Az engedélyezési végpont kérésazonosító-jogkivonatokat ad ki.

Already configured Az alkalmazás konfigurálva van ezekkel az attribútumokkal.

2. lépés: A ASP.NET Core-projekt letöltése

Futtassa a projektet.

Tipp.

A Windows elérési úthossz-korlátozásai által okozott hibák elkerülése érdekében javasoljuk, hogy bontsa ki az archívumot, vagy klónozza az adattárat a meghajtó gyökeréhez közeli könyvtárba.

3. lépés: Az alkalmazás konfigurálva van, és készen áll a futtatásra

Konfiguráltuk a projektet az alkalmazás tulajdonságainak értékeivel, és készen áll a futtatásra.

Feljegyzés

Enter_the_Supported_Account_Info_Here

További információ

Ez a szakasz áttekintést nyújt a felhasználók bejelentkezéséhez szükséges kódról. Ez az áttekintés hasznos lehet annak megértéséhez, hogyan működik a kód, mik a fő argumentumok, és hogyan adhat hozzá bejelentkezést egy meglévő ASP.NET Core-alkalmazáshoz.

A minta működése

Diagram of the interaction between the web browser, the web app, and the Microsoft identity platform in the sample app.

Indítási osztály

A Microsoft.AspNetCore.Authentication köztes szoftver egy olyan osztályt Startup használ, amely az üzemeltetési folyamat indításakor fut:

public void ConfigureServices(IServiceCollection services)
{
    services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme)
        .AddMicrosoftIdentityWebApp(Configuration.GetSection("AzureAd"));

    services.AddControllersWithViews(options =>
    {
        var policy = new AuthorizationPolicyBuilder()
            .RequireAuthenticatedUser()
            .Build();
        options.Filters.Add(new AuthorizeFilter(policy));
    });
   services.AddRazorPages()
        .AddMicrosoftIdentityUI();
}

A AddAuthentication() metódus úgy konfigurálja a szolgáltatást, hogy cookie-alapú hitelesítést adjon hozzá. Ezt a hitelesítést böngészőforgatókönyvekben használják, és az OpenID Csatlakozás kihívásának beállítására szolgálnak.

Az azt tartalmazó .AddMicrosoftIdentityWebApp sor Microsoft Identitásplatform hitelesítést ad hozzá az alkalmazáshoz. Az alkalmazás ezután úgy van konfigurálva, hogy a appsettings.json konfigurációs fájljának szakaszában található AzureAD alábbi információk alapján jelentkezzen be a felhasználókba:

appsettings.json kulcs Leírás
ClientId Az Azure Portalon regisztrált alkalmazás (ügyfél) azonosítója.
Instance Biztonsági jogkivonat-szolgáltatás (STS) végpontja a felhasználó hitelesítéséhez. Ez az érték általában https://login.microsoftonline.com/az Azure nyilvános felhőt jelzi.
TenantId A bérlő vagy a bérlőazonosító (GUID) neve, illetve common munkahelyi vagy iskolai fiókkal vagy Személyes Microsoft-fiókkal rendelkező felhasználók bejelentkezése.

A Configure() metódus két fontos metódust tartalmaz, app.UseAuthentication() amelyek app.UseAuthorization()lehetővé teszik a névvel ellátott funkciók használatát. A módszerben Configure() a Microsoft Identity webútvonalait is regisztrálnia kell legalább egy hívással endpoints.MapControllerRoute() vagy hívással endpoints.MapControllers():

app.UseAuthentication();
app.UseAuthorization();

app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
    endpoints.MapRazorPages();
});

Vezérlő vagy metódusok védelmére szolgáló attribútum

Az attribútum használatával megvédheti a vezérlőt vagy a [Authorize] vezérlő metódusait. Ez az attribútum úgy korlátozza a vezérlőhöz vagy metódusokhoz való hozzáférést, hogy csak hitelesített felhasználókat engedélyez. A hitelesítési feladat ezután megkezdhető a vezérlő eléréséhez, ha a felhasználó nincs hitelesítve.

Súgó és támogatás

Ha segítségre van szüksége, szeretne jelentést készíteni egy problémáról, vagy szeretne többet megtudni a támogatási lehetőségekről, olvassa el a súgót és a fejlesztők támogatását.

Következő lépések

Az ASP.NET Core oktatóanyagot tartalmazó GitHub-adattár útmutatást és további kódmintákat tartalmaz, amelyek bemutatják, hogyan:

  • Adjon hozzá hitelesítést egy új ASP.NET Core-webalkalmazáshoz.
  • Hívja fel a Microsoft Graphot, más Microsoft API-kat vagy saját webes API-kat.
  • Engedélyezés hozzáadása.
  • Jelentkezzen be felhasználókkal nemzeti felhőkben vagy közösségi identitásokkal.