Aracılığıyla paylaş


Öğretici: Kullanıcıların kimliğini doğrulayan bir ASP.NET Core web uygulaması ayarlama

Şunlar için geçerlidir: Aşağıdaki içeriğin iş gücü kiracıları için geçerli olduğunu gösteren beyaz onay işareti simgesine sahip yeşil daire. İş gücü kiracıları Aşağıdaki içeriğin dış kiracılar için geçerli olduğunu gösteren beyaz onay işareti simgesine sahip yeşil daire. Dış kiracılar (daha fazla bilgi edinin)

Bu öğreticide bir ASP.NET Core web uygulaması oluşturacak ve bunu kimlik doğrulaması için yapılandıracaksınız. Bu, ASP.NET Core web uygulamasının nasıl derlendiğini ve Microsoft Entra yönetim merkezini kullanarak kimlik doğrulaması için nasıl hazırlandığını gösteren serinin 1. bölümüdür. Bu uygulama, bir iş gücü kiracısında çalışanlar veya dış kiracı kullanan müşteriler için kullanılabilir

Bu öğreticide şunları yapacaksınız:

  • ASP.NET Core web uygulaması oluşturma
  • Kendi kendine imzalanan sertifika oluşturma
  • Uygulama ayarlarını yapılandırma
  • Platform ayarlarını ve URL'leri tanımlama

Önkoşullar

  • Etkin aboneliği olan bir Azure hesabı. Ücretsiziçin hesap oluşturun. Bu hesabın uygulamaları yönetme izinleri olmalıdır. Uygulamayı kaydetmek için aşağıdaki rollerden birini kullanın:
    • Uygulama Yöneticisi
    • Uygulama Geliştirici
  • ASP.NET Core uygulamalarını destekleyen tüm tümleşik geliştirme ortamları (IDE) kullanılabilse de, bu öğretici visual studio code kullanır. buradanindirebilirsiniz.
  • Asgari gereklilik .NET 8.0 SDK'dir.
  • ASP.NET Core geliştirici sertifikası. Bir tane yüklemek için dotnet dev-certs kullanın
  • Microsoft Entra yönetim merkezine, yalnızca bu kuruluş dizinindeki Hesaplar için yapılandırılmış yeni bir uygulama kaydedin. Daha fazla bilgi için Bir uygulamayı kaydetme bölümüne bakın. Daha sonra kullanmak üzere uygulamaya Genel Bakış sayfasından aşağıdaki değerleri kaydedin:
    • Uygulama (istemci) kimliği
    • Dizin (kullanıcı) kimliği
  • Web platformu yapılandırmasını kullanarak aşağıdaki yeniden yönlendirme URI'lerini ekleyin. Diğer ayrıntılar için bkz. Uygulamanıza yeniden yönlendirme URI'sini ekleme .
    • Yeniden Yönlendirme URI: https://localhost:5001/signin-oidc
    • Ön kanal oturumu kapatma URL'si: https://localhost:5001/signout-oidc
  • Geliştirme amacıyla, otomatik olarak imzalanan bir sertifika oluşturun. Belgeyi karşıya yüklemek için kimlik bilgilerini ekleyin ve sertifikayı kaydetmek ve parmak izialmak için'e bakın. Üretim uygulamaları için otomatik olarak imzalanan sertifika kullanmayın. Güvenilir bir sertifika yetkilisi kullanın.

ASP.NET Core projesi oluşturma

Bu bölümde Visual Studio Code'da bir ASP.NET Core projesi oluşturacaksınız.

  1. Visual Studio Code'ı açın ve Dosya > Klasör Aç... öğesini seçin. Adresine gidin ve projenizin oluşturulacağı konumu seçin.

  2. Terminal > Yeni Terminalseçeneklerini seçerek yeni bir terminal açın.

  3. Model Görünüm Denetleyicisi (MVC) ASP.NET Core projesi yapmak için aşağıdaki komutu girin.

    dotnet new mvc -n identity-client-web-app
    

Kimlik paketlerini yükleme

Bu uygulama Microsoft.Identity.Web kullanır ve ilgili NuGet paketinin yüklenmesi gerekir.

Yeni identity-client-web-app klasörüne geçmek ve ilgili NuGet paketini yüklemek için aşağıdaki kod parçacığını kullanın:

cd identity-client-web-app
dotnet add package Microsoft.Identity.Web.UI

Uygulamayı kimlik doğrulaması için yapılandırma

Microsoft kimlik platformunu kullanarak kullanıcılarda oturum açabilen web uygulamaları, appsettings.jsonbir yapılandırma dosyası aracılığıyla yapılandırılır. ASP.NET Core'da aşağıdaki değerleri belirtmelidir:

Setting Description
Instance Uygulamanızı ulusal bulutlarda çalıştırmak için kimlik doğrulama uç noktası. Aşağıdakilerden birini kullanın:
- https://login.microsoftonline.com/ (Azure genel bulutu)
- https://login.microsoftonline.us/ (Azure ABD hükümeti)
- https://login.microsoftonline.de/ (Microsoft Entra Germany)
- https://login.partner.microsoftonline.cn/ (21Vianet tarafından işletilen Microsoft Entra China)
TenantId Uygulamanın kayıtlı olduğu kiracının tanımlayıcısı. Önerilen: Uygulama kaydındaki kiracı kimliğini kullanın. Alternatif:
- organizations (herhangi bir iş veya okul hesabı)
- common (iş/okul veya Microsoft kişisel hesabı)
- consumers (Yalnızca Microsoft kişisel hesapları).
ClientId Uygulama kaydından alınan uygulamanın (istemci) tanımlayıcısı.
CertificateThumbprint Microsoft Entra yönetim merkezine yüklenen sertifikanın parmak izi (bkz. kimlik bilgileri ekleme).
CallbackPath Yanıtları yeniden yönlendirmek için kullanılan yol; bu eğitim için /signin-oidc şeklinde ayarlayın.
DownstreamApi Microsoft Graph'a erişmek için bir uç nokta tanımlayan tanımlayıcı. Uygulama URI'sini gerekli kapsamla birleştirin (örneğin, user.read).

Yapılandırma dosyasını güncelleştirme

IDE'nizde appsettings.json açın ve dosya içeriğini aşağıdaki kod parçacığıyla değiştirin. Tırnak işaretleri içindeki metni daha önce kaydedilmiş değerlerle değiştirin.

{
  "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": "*"
  }

Yeniden yönlendirme URI'sini güncelleştirme

önkoşullarından yeniden yönlendirme URI'si https://localhost:5001/signin-oidcolarak ayarlanır. Bunun uygulama başlatma ayarlarında güncelleştirilmesi gerekir. Yerel uygulama kurulumu sırasında oluşturulan yeniden yönlendirme URI'sini veya uygulama kaydındaki yeniden yönlendirme URI'sine eşleşmesi koşuluyla diğer kullanılabilir bağlantı noktası numarasını kullanabilirsiniz.

  1. Özellikleri klasöründe launchSettings.json dosyasını açın.

  2. https nesnesini bulun ve applicationURI değerini doğru bağlantı noktası numarasıyla güncelleştirin; bu durumda 5001. Satır aşağıdaki kod parçacığına benzer görünmelidir:

    "applicationUrl": "https://localhost:5001;http://localhost:{port}",
    

Sonraki adım

Yetkilendirme ve kimlik doğrulaması için ASP.NET Core web uygulaması yapılandırma