Samouczek: konfigurowanie aplikacji internetowej ASP.NET Core, która uwierzytelnia użytkowników
Dotyczy: Dzierżawcy siły roboczej
Dzierżawcy zewnętrzni (dowiedz się więcej)
W tym samouczku utworzysz aplikację internetową ASP.NET Core i skonfigurujesz ją pod kątem uwierzytelniania. Jest to część 1 serii, która pokazuje, jak utworzyć aplikację internetową ASP.NET Core i przygotować ją do uwierzytelniania przy użyciu centrum administracyjnego firmy Microsoft Entra. Ta aplikacja może być używana zarówno dla pracowników w dzierżawie pracowniczej, jak i dla klientów korzystających z zewnętrznej dzierżawy.
W tym samouczku:
- Tworzenie aplikacji internetowej ASP.NET Core
- Tworzenie certyfikatu z podpisem własnym
- Konfigurowanie ustawień aplikacji
- Definiowanie ustawień i adresów URL platformy
Warunki wstępne
- Konto platformy Azure z aktywną subskrypcją.
Utwórz bezpłatne konto. To konto musi mieć uprawnienia do zarządzania aplikacjami. Aby zarejestrować aplikację, użyj dowolnej z następujących ról:
- Administrator aplikacji
- Deweloper aplikacji
- Administrator aplikacji w chmurze
- Mimo że można używać dowolnego zintegrowanego środowiska programistycznego (IDE), które obsługuje aplikacje ASP.NET Core, niniejszy samouczek wykorzystuje Visual Studio Code. Możesz pobrać go tutaj.
- Minimalne wymaganie zestawu .NET 8.0 SDK.
- Najemca siły roboczej. Możesz użyć katalogu domyślnego lub skonfigurować nową dzierżawę.
- Aplikacja zarejestrowana w centrum administracyjnym firmy Microsoft Entra. Na potrzeby tej serii samouczków użyj następującej konfiguracji:
- Nazwa: identity-client-web-app
- Obsługiwane typy kont: tylko konta w tym katalogu organizacyjnym
-
URI przekierowania:
https://localhost:5001/signin-oidc
- adres URL wylogowywania dla kanału przedniego :
https://localhost:5001/signout-oidc
- Na potrzeby programowania utworzyć certyfikat z podpisem własnym. Zapoznaj się z odnośnie dodawania poświadczeń w celu przekazania certyfikatu i zarejestrowania certyfikatu odcisku cyfrowego. Nie używaj certyfikatu z podpisem własnym dla aplikacji produkcyjnych. Użyj zaufanego urzędu certyfikacji.
Tworzenie projektu ASP.NET Core
W tej sekcji utworzysz projekt ASP.NET Core w programie Visual Studio Code.
Otwórz program Visual Studio Code, wybierz pozycję Plik > Otwórz folder.... Przejdź do i wybierz lokalizację, w której chcesz utworzyć projekt.
Otwórz nowy terminal, wybierając pozycję Terminal > New Terminal.
Wprowadź następujące polecenie, aby utworzyć projekt MVC (Model View Controller) ASP.NET Core.
dotnet new mvc -n identity-client-web-app
Instalowanie pakietów tożsamości
Ta aplikacja używa Microsoft.Identity.Web i należy zainstalować powiązany pakiet NuGet.
Użyj następującego fragmentu kodu, aby przejść do nowego folderu identity-client-web-app i zainstalować odpowiedni pakiet NuGet:
dotnet add package Microsoft.Identity.Web.UI
Konfigurowanie aplikacji pod kątem uwierzytelniania
Wartości zarejestrowane w konfiguracji aplikacji są używane do konfigurowania aplikacji na potrzeby uwierzytelniania. Plik konfiguracji appsettings.jsonsłuży do przechowywania ustawień aplikacji używanych w czasie wykonywania.
Aktualizowanie pliku konfiguracji
W środowisku IDE otwórz appsettings.json i zastąp zawartość pliku poniższym fragmentem kodu. Zastąp tekst w cudzysłowach wartościami, które zostały zarejestrowane wcześniej.
{
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"TenantId": "Enter_the_Tenant_Id_Here",
"ClientId": "Enter_the_Application_Id_Here",
"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
— punkt końcowy uwierzytelniania. Sprawdź różne dostępne punkty końcowe w chmurach krajowych . -
TenantId
— identyfikator dzierżawcy, gdzie aplikacja została zarejestrowana. Zastąp tekst w cudzysłowie wartością identyfikatora katalogu (dzierżawy), którą zanotowano wcześniej na stronie przeglądu zarejestrowanej aplikacji. -
ClientId
— identyfikator aplikacji, nazywany również klientem. Zastąp tekst w cudzysłowach wartością Identyfikatora aplikacji (klienta), która została zapisana wcześniej na stronie przeglądu zarejestrowanej aplikacji. -
ClientCertificates
— certyfikat z podpisem własnym jest używany do uwierzytelniania w aplikacji. Zastąp tekstCertificateThumbprint
odciskiem palca certyfikatu, który został wcześniej zarejestrowany. Nie używaj certyfikatu z podpisem własnym dla aplikacji produkcyjnych. -
CallbackPath
— jest identyfikatorem, który ułatwia serwerowi przekierowanie odpowiedzi do odpowiedniej aplikacji. -
DownstreamApi
— jest identyfikatorem definiującym punkt końcowy na potrzeby uzyskiwania dostępu do programu Microsoft Graph. Identyfikator URI aplikacji jest połączony z określonym zakresem. Aby zdefiniować konfigurację aplikacji należącej do organizacji, wartość atrybutuScopes
jest nieco inna.
Zaktualizuj identyfikator URI przekierowania
Z wymagań wstępnychidentyfikator URI przekierowania jest ustawiony na https://localhost:5001/signin-oidc
. Należy to zaktualizować w ustawieniach uruchamiania aplikacji. Możesz użyć identyfikatora URI przekierowania utworzonego podczas konfiguracji aplikacji lokalnej lub innego dostępnego numeru portu, pod warunkiem, że jest zgodny z identyfikatorem URI przekierowania w rejestracji aplikacji.
W folderze Properties otwórz plik launchSettings.json.
Znajdź obiekt
https
i zaktualizuj wartośćapplicationURI
przy użyciu poprawnego numeru portu, w tym przypadku5001
. Wiersz powinien wyglądać podobnie do poniższego fragmentu:"applicationUrl": "https://localhost:5001;http://localhost:{port}",