Rychlý start: Přidání přihlašování účtem Microsoft do webové aplikace ASP.NET Core

Vítejte! Pravděpodobně to není stránka, kterou jste očekávali. Zatímco pracujeme na opravě, měl by vás tento odkaz dostat na správný článek:

Rychlý start: Přidání přihlašování účtem Microsoft do webové aplikace ASP.NET Core

Omlouváme se za nepříjemnosti a vážíme si vaší trpělivosti, zatímco pracujeme na vyřešení tohoto problému.

V tomto rychlém startu si stáhnete a spustíte ukázku kódu, která ukazuje, jak webová aplikace ASP.NET Core může přihlásit uživatele z libovolné organizace Microsoft Entra.

Krok 1: Konfigurace aplikace na webu Azure Portal

Ukázka kódu v tomto rychlém startu bude fungovat takto:

  • Pro identifikátor URI přesměrování zadejte https://localhost:44321/ a https://localhost:44321/signin-oidc.
  • Jako adresu URL odhlášení z front-kanálu zadejte https://localhost:44321/signout-oidc.

Koncový bod autorizace vydá tokeny ID požadavku.

Already configured Vaše aplikace je nakonfigurovaná s těmito atributy.

Krok 2: Stažení projektu ASP.NET Core

Spustit projekt.

Tip

Pokud se chcete vyhnout chybám způsobeným omezením délky cesty ve Windows, doporučujeme extrahovat archiv nebo klonovat úložiště do adresáře blízko kořenového adresáře jednotky.

Krok 3: Aplikace je nakonfigurovaná a připravená ke spuštění

Nakonfigurovali jsme váš projekt s hodnotami vlastností vaší aplikace a je připravený ke spuštění.

Poznámka:

Enter_the_Supported_Account_Info_Here

Více informací

Tato část obsahuje přehled kódu potřebného k přihlášení uživatelů. Tento přehled může být užitečný k pochopení toho, jak kód funguje, jaké jsou hlavní argumenty a jak přidat přihlášení k existující aplikaci ASP.NET Core.

Jak ukázka funguje

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

Startup – třída

Middleware Microsoft.AspNetCore.Authentication používá Startup třídu, která se spustí při spuštění hostitelského procesu:

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();
}

Metoda AddAuthentication() nakonfiguruje službu tak, aby přidala ověřování na základě souborů cookie. Toto ověřování se používá ve scénářích prohlížeče a k nastavení výzvy na OpenID Připojení.

Řádek, který obsahuje .AddMicrosoftIdentityWebApp přidání ověřování Microsoft Identity Platform do vaší aplikace. Aplikace se pak nakonfiguruje pro přihlášení uživatelů na základě následujících informací v AzureAD části konfiguračního souboru appsettings.json :

klíč appsettings.json Popis
ClientId ID aplikace (klienta) zaregistrované na webu Azure Portal
Instance Koncový bod služby tokenů zabezpečení (STS) pro ověření uživatele Tato hodnota je obvykle https://login.microsoftonline.com/označující veřejný cloud Azure.
TenantId Název tenanta nebo ID tenanta (GUID) nebo common přihlášení uživatelů pomocí pracovních nebo školních účtů nebo osobních účtů Microsoft.

Tato Configure() metoda obsahuje dvě důležité metody a app.UseAuthentication()app.UseAuthorization(), které umožňují jejich pojmenované funkce. V Configure() metodě je také nutné zaregistrovat webové trasy Microsoft Identity s alespoň jedním voláním endpoints.MapControllerRoute() nebo voláním endpoints.MapControllers():

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

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

Atribut pro ochranu kontroleru nebo metod

Pomocí atributu [Authorize] můžete chránit metody kontroleru nebo kontroleru. Tento atribut omezuje přístup k kontroleru nebo metodám tím, že povoluje pouze ověřené uživatele. Ověřovací výzva se pak může spustit pro přístup k kontroleru, pokud uživatel není ověřený.

Nápověda a podpora

Pokud potřebujete pomoc, chcete nahlásit problém nebo se chcete dozvědět o možnostech podpory, přečtěte si nápovědu a podporu pro vývojáře.

Další kroky

Úložiště GitHub, které obsahuje tento kurz ASP.NET Core, obsahuje pokyny a další ukázky kódu, které ukazují, jak:

  • Přidejte ověřování do nové webové aplikace ASP.NET Core.
  • Volejte rozhraní Microsoft Graph, jiná rozhraní API Microsoftu nebo vlastní webová rozhraní API.
  • Přidejte autorizaci.
  • Přihlaste se k uživatelům v národních cloudech nebo pomocí sociálních identit.