Megosztás a következőn keresztül:


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

Isten hozott! 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 Microsoft-fiókkal 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.

Már konfigurálva van 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.

Jótanács

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.

Megjegyzé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 a webböngésző, a webalkalmazás és a mintaalkalmazás Microsoft Identitásplatform közötti interakcióról.

Startup 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ős helyzetekben használják, és a kihívás beállítására az OpenID Connect esetében.

A Microsoft identitásplatform-hitelesítést hozzáadó .AddMicrosoftIdentityWebApp sor az alkalmazáshoz. Az alkalmazás ezután úgy van konfigurálva, hogy a felhasználók az alábbi információk alapján jelentkezzenek be a AzureAD konfigurációs fájl szakaszában.

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ő neve vagy a bérlőazonosító (GUID), vagy common annak érdekében, hogy a felhasználók munkhelyi vagy iskolai fiókkal vagy személyes Microsoft-fiókkal jelentkezzenek be.

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

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ély hozzáadása.
  • Jelentkezzen be felhasználóként a nemzeti felhőkhöz vagy szociális identitásokkal.