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
Di Manajemen AD FS, klik kanan pada Grup Aplikasi dan pilih Tambahkan Grup Aplikasi.
Pada Wizard Grup Aplikasi, untuk nama masukkan ADFSSSO dan di bawah Aplikasi Client-Server pilih browser Web yang mengakses templat aplikasi web . Klik Berikutnya.

Salin nilai Pengidentifikasi Klien. Ini akan digunakan nanti sebagai nilai untuk ida:ClientId dalam aplikasi web.config file.
Masukkan yang berikut ini untuk URI Pengalihan: - https://localhost:44320/. Klik Tambahkan. Klik Berikutnya.

Pada layar Ringkasan , klik Berikutnya.

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

Untuk Mengubah aplikasi
Buka sampel menggunakan Visual Studio.
Bangun ulang aplikasi sehingga semua NuGets yang hilang dipulihkan.
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]" />
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"];
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
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.

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

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