Självstudie: Förbereda ett program för autentisering
I den föregående självstudien registrerade du ett webbprogram i administrationscentret för Microsoft Entra. Den här självstudien visar hur du skapar en ASP.NET Core-webbapp med hjälp av en IDE. Du skapar och laddar också upp ett självsignerat certifikat till administrationscentret för Microsoft Entra för att skydda ditt program. Slutligen konfigurerar du programmet för autentisering.
I den här självstudien:
- Skapa en ASP.NET Core-webbapp
- Skapa ett självsignerat certifikat
- Konfigurera inställningarna för programmet
- Definiera plattformsinställningar och URL:er
Förutsättningar
- Slutförande av förutsättningarna och stegen i Självstudie: Registrera ett program med Microsofts identitetsplattform.
- Du kan ladda ned en IDE som används i den här självstudien här.
- Visual Studio 2022
- Visual Studio-koden
- Visual Studio 2022 för Mac
- Ett minimikrav för .NET 6.0 SDK.
Skapa ett ASP.NET Core-projekt
Använd följande flikar för att skapa ett ASP.NET Core-projekt i en IDE.
- Öppna Visual Studio och välj sedan Skapa ett nytt projekt.
- Sök efter och välj mallen ASP.NET Core Web App och välj sedan Nästa.
- Ange ett namn för projektet, till exempel NewWebAppLocal.
- Välj en plats för projektet eller acceptera standardalternativet och välj sedan Nästa.
- Acceptera standardvärdet för Ramverk, Autentiseringstyp och Konfigurera för HTTPS. Autentiseringstypen kan anges till Ingen eftersom den här självstudien beskriver processen.
- Välj Skapa.
Skapa och ladda upp ett självsignerat certifikat
Användning av certifikat är ett föreslaget sätt att skydda kommunikationen mellan klient och server. I den här självstudien skapas ett självsignerat certifikat i projektkatalogen. Läs mer om självsignerade certifikat här.
Välj Verktyg > Kommandotolken För kommandoradsutvecklare>.
Ange följande kommando för att skapa ett nytt självsignerat certifikat:
dotnet dev-certs https -ep ./certificate.crt --trust
Ladda upp certifikat till administrationscentret för Microsoft Entra
För att göra certifikatet tillgängligt för programmet måste det laddas upp till klientorganisationen.
Från sidan Översikt i appen som skapades tidigare väljer du Certifikat och hemligheter under Hantera och väljer fliken Certifikat (0).
Välj Ladda upp certifikat.
Välj mappikonen och bläddra sedan efter och välj certifikatet som skapades tidigare.
Ange en beskrivning för certifikatet och välj Lägg till.
Registrera tumavtrycksvärdet, som ska användas i nästa steg.
Konfigurera programmet för autentisering och API-referens
Värdena som registrerats tidigare används för att konfigurera programmet för autentisering. Konfigurationsfilen, appsettings.json, används för att lagra programinställningar som används under körning. Eftersom programmet också anropar till ett webb-API måste det också innehålla en referens till det.
Öppna appsettings.json i din IDE och ersätt filinnehållet med följande kodfragment. Ersätt texten med citattecken med de värden som spelades in tidigare.
{ "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": "*" }
Instance
– Autentiseringsslutpunkten. Kontrollera med de olika tillgängliga slutpunkterna i nationella moln.TenantId
– Identifieraren för klientorganisationen där programmet är registrerat. Ersätt texten inom citattecken med värdet katalog-ID (klientorganisation) som registrerades tidigare från översiktssidan för det registrerade programmet.ClientId
- Identifieraren för programmet, även kallad klienten. Ersätt texten inom citattecken med det program-ID-värde (klient)-ID som spelades in tidigare från översiktssidan för det registrerade programmet.ClientCertificates
– Ett självsignerat certifikat används för autentisering i programmet. Ersätt texten iCertificateThumbprint
med tumavtrycket för certifikatet som tidigare har registrerats.CallbackPath
– Är en identifierare som hjälper servern att omdirigera ett svar till rätt program.DownstreamApi
– Är en identifierare som definierar en slutpunkt för åtkomst till Microsoft Graph. Programmets URI kombineras med det angivna omfånget. Om du vill definiera konfigurationen för ett program som ägs av organisationen är värdet förScopes
attributet något annorlunda.
Spara ändringar i filen.
Öppna filen starta Inställningar.json i mappen Egenskaper.
Leta upp och registrera
https
värdetapplicationURI
i start Inställningar.json till exempelhttps://localhost:{port}
. Den här URL:en används när omdirigerings-URI:n definieras. Använd inte värdethttp
.
Lägga till en plattformsomdirigerings-URI
I administrationscentret för Microsoft Entra går du till Hantera, väljer Appregistreringar och väljer sedan det program som skapades tidigare.
I den vänstra menyn går du till Hantera och väljer Autentisering.
I Plattformskonfigurationer väljer du Lägg till en plattform och sedan Webb.
Under Omdirigerings-URI:er anger du
applicationURL
ochCallbackPath
,/signin-oidc
i form avhttps://localhost:{port}/signin-oidc
.Under Url för utloggning i frontkanalen anger du följande URL för utloggning,
https://localhost:{port}/signout-oidc
.Välj Konfigurera.