Membangun aplikasi web menggunakan OpenID Koneksi dengan LAYANAN Federasi Direktori Aktif 2016 dan yang lebih baru

Prasyarat

Berikut ini adalah daftar prasyarat yang diperlukan sebelum menyelesaikan dokumen ini. Dokumen ini mengasumsikan bahwa Layanan Federasi Direktori Aktif telah diinstal dan farm Layanan Federasi Direktori Aktif telah dibuat.

  • GitHub alat klien

  • Layanan Federasi Direktori Aktif di Windows Server 2016 TP4 atau yang lebih baru

  • Visual Studio 2013 atau yang lebih baru.

Membuat Grup Aplikasi di Layanan Federasi Direktori Aktif 2016 dan yang lebih baru

Bagian berikut menjelaskan cara mengonfigurasi grup aplikasi di Layanan Federasi Direktori Aktif 2016 dan yang lebih baru.

Buat Grup Aplikasi

  1. Di Manajemen AD FS, klik kanan pada Grup Aplikasi dan pilih Tambahkan Grup Aplikasi.

  2. Pada Wizard Grup Aplikasi, untuk nama masukkan ADFSSSO dan di bawah Aplikasi Client-Server pilih browser Web yang mengakses templat aplikasi web . Klik Berikutnya.

    Screenshot that highlights the Web browser accessing a web application template.

  3. Salin nilai Pengidentifikasi Klien. Ini akan digunakan nanti sebagai nilai untuk ida:ClientId dalam aplikasi web.config file.

  4. Masukkan yang berikut ini untuk URI Pengalihan: - https://localhost:44320/. Klik Tambahkan. Klik Berikutnya.

    Screenshot that shows where to enter the redirect U R I value.

  5. Pada layar Ringkasan , klik Berikutnya.

    Screenshot that shows Summary screen.

  6. Pada layar Selesai , klik Tutup.

Mengunduh dan memodifikasi aplikasi sampel untuk mengautentikasi melalui OpenID Koneksi dan Ad FS

Bagian ini membahas cara mengunduh sampel Web APP dan memodifikasinya di Visual Studio. Kami akan menggunakan sampel Azure AD yang ada di sini.

Untuk mengunduh proyek sampel, gunakan Git Bash dan ketik yang berikut:

git clone https://github.com/Azure-Samples/active-directory-dotnet-webapp-openidconnect

Screenshot of a terminal window that shows how to download the sample project.

Untuk Mengubah aplikasi

  1. Buka sampel menggunakan Visual Studio.

  2. Bangun ulang aplikasi sehingga semua NuGets yang hilang dipulihkan.

  3. Buka file web.config. Ubah nilai berikut ini sehingga terlihat seperti berikut ini:

    <add key="ida:ClientId" value="[Replace this Client Id from #3 in above section]" />
    <add key="ida:ADFSDiscoveryDoc" value="https://[Your AD FS hostname]/adfs/.well-known/openid-configuration" />
    <!--<add key="ida:Tenant" value="[Enter tenant name, e.g. contoso.onmicrosoft.com]" />
    <add key="ida:AADInstance" value="https://login.microsoftonline.com/{0}" />-->
    <add key="ida:PostLogoutRedirectUri" value="[Replace this with Redirect URI from #4 in the above section]" />
    

    Screenshot that highlights the changes made to the web dot config file.

  4. Buka file Startup.Auth.cs dan buat perubahan berikut:

    • Komentari hal berikut:

      //string Authority = String.Format(CultureInfo.InvariantCulture, aadInstance, tenant);
      
    • Sesuaikan logika inisialisasi middleware Koneksi OpenId dengan perubahan berikut:

      private static string clientId = ConfigurationManager.AppSettings["ida:ClientId"];
      //private static string aadInstance = ConfigurationManager.AppSettings["ida:AADInstance"];
      //private static string tenant = ConfigurationManager.AppSettings["ida:Tenant"];
      private static string metadataAddress = ConfigurationManager.AppSettings["ida:ADFSDiscoveryDoc"];
      private static string postLogoutRedirectUri = ConfigurationManager.AppSettings["ida:PostLogoutRedirectUri"];
      

      Screenshot that shows how to change the Open I D Connect middleware initialization logic.

    • Selanjutnya ke bawah, ubah opsi middleware Koneksi OpenId seperti berikut ini:

      app.UseOpenIdConnectAuthentication(
          new OpenIdConnectAuthenticationOptions
          {
              ClientId = clientId,
              //Authority = authority,
              MetadataAddress = metadataAddress,
              PostLogoutRedirectUri = postLogoutRedirectUri,
              RedirectUri = postLogoutRedirectUri
      

      Screenshot that shows how to modify the Open I D Connect middleware options.

      Dengan mengubah hal di atas, kami melakukan hal berikut:

      • Alih-alih menggunakan Otoritas untuk mengomunikasikan data tentang penerbit tepercaya, kami menentukan lokasi dokumen penemuan langsung melalui MetadataAddress

      • Azure AD tidak memberlakukan keberadaan redirect_uri dalam permintaan, tetapi AD FS tidak. Jadi, kita perlu menambahkannya di sini

Memverifikasi bahwa aplikasi berfungsi

Setelah perubahan di atas dibuat, tekan F5. Ini akan memunculkan halaman sampel. Klik masuk.

Screenshot that shows the A S P dot N E T sample page.

Anda akan diarahkan kembali ke halaman masuk Layanan Federasi Direktori Aktif. Lanjutkan dan masuk.

AD FS OpenID

Setelah ini berhasil, Anda akan melihat bahwa Anda sekarang masuk.

Screenshot that highlights the username you used to log in.

Langkah berikutnya

Pengembangan Layanan Federasi Direktori Aktif