Mengonfigurasi Layanan Federasi Direktori Aktif untuk autentikasi sertifikat pengguna

Autentikasi Sertifikat Pengguna digunakan terutama dalam 2 kasus penggunaan

  • Pengguna menggunakan kartu pintar untuk masuk terhadap sistem LAYANAN Federasi Direktori Aktif mereka
  • Pengguna menggunakan sertifikat yang disediakan untuk perangkat seluler

Prasyarat

  1. Tentukan mode autentikasi sertifikat pengguna Layanan Federasi Direktori Aktif yang ingin Anda aktifkan menggunakan salah satu mode yang dijelaskan dalam artikel ini
  2. Pastikan rantai kepercayaan sertifikat pengguna Anda diinstal & tepercaya oleh semua server LAYANAN Federasi Direktori Aktif dan WAP termasuk otoritas sertifikat perantara. Biasanya ini dilakukan melalui GPO di server AD FS / WAP
  3. Pastikan bahwa sertifikat akar rantai kepercayaan untuk sertifikat pengguna Anda ada di penyimpanan NTAuth di Direktori Aktif
  4. Jika menggunakan Layanan Federasi Direktori Aktif dalam mode autentikasi sertifikat alternatif, pastikan bahwa server AD FS dan WAP Anda memiliki sertifikat SSL yang berisi nama host LAYANAN Federasi Direktori Aktif yang diawali dengan "certauth", misalnya "certauth.fs.contoso.com", dan lalu lintas ke nama host ini diizinkan melalui firewall
  5. Jika menggunakan autentikasi sertifikat dari ekstranet, pastikan bahwa setidaknya satu AIA dan setidaknya satu lokasi CDP atau OCSP dari daftar yang ditentukan dalam sertifikat Anda dapat diakses dari internet.
  6. Juga untuk autentikasi sertifikat Azure AD, untuk klien Exchange ActiveSync, sertifikat klien harus memiliki alamat email yang dapat dirutekan pengguna di Exchange secara online baik di Nama Prinsipal atau nilai Nama RFC822 dari bidang Nama Alternatif Subjek. (Azure Active Directory memetakan nilai RFC822 ke atribut Alamat Proksi di direktori.)
  7. Layanan Federasi Direktori Aktif tidak mendukung Petunjuk Nama Pengguna dengan autentikasi berbasis SmartCard/Sertifikat.

Mengonfigurasi Layanan Federasi Direktori Aktif untuk autentikasi sertifikat pengguna

Aktifkan autentikasi sertifikat pengguna sebagai metode autentikasi intranet atau ekstranet di Layanan Federasi Direktori Aktif, menggunakan konsol Manajemen Layanan Federasi Direktori Aktif atau cmdlet Set-AdfsGlobalAuthenticationPolicyPowerShell .

Jika Anda mengonfigurasi Layanan Federasi Direktori Aktif untuk autentikasi sertifikat Azure AD, pastikan Anda telah mengonfigurasi pengaturan Azure AD dan aturan klaim Layanan Federasi Direktori Aktif yang diperlukan untuk Penerbit sertifikat dan Nomor Seri

Selain itu, ada beberapa aspek opsional.

  • Jika Anda ingin menggunakan klaim berdasarkan bidang sertifikat dan ekstensi selain EKU (jenis https://schemas.microsoft.com/2012/12/certificatecontext/extension/ekuklaim ), konfigurasikan aturan pass through klaim tambahan pada kepercayaan penyedia klaim Direktori Aktif. Lihat di bawah ini untuk daftar lengkap klaim sertifikat yang tersedia.
  • Jika Anda perlu membatasi akses berdasarkan jenis sertifikasi, Anda dapat menggunakan properti tambahan pada sertifikat dalam aturan otorisasi penerbitan Layanan Federasi Direktori Aktif untuk aplikasi. Skenario umum adalah "hanya izinkan sertifikat yang disediakan oleh penyedia MDM" atau "hanya izinkan sertifikat kartu pintar"

Penting

Pelanggan yang menggunakan alur kode perangkat untuk autentikasi dan melakukan autentikasi perangkat menggunakan IDP selain Azure AD (misalnya LAYANAN Federasi Direktori Aktif) tidak akan dapat menerapkan akses berbasis perangkat (misalnya hanya mengizinkan perangkat terkelola menggunakan layanan MDM pihak ke-3) untuk sumber daya Azure AD. Untuk melindungi akses ke sumber daya perusahaan Anda di Azure AD dan mencegah kebocoran data apa pun, pelanggan harus mengonfigurasi akses bersyarat berbasis perangkat Azure AD (yaitu " Memerlukan perangkat untuk ditandai keluhan" kontrol pemberian di akses bersyarat Azure AD).

  • Konfigurasikan otoritas sertifikasi penerbitan yang diizinkan untuk sertifikat klien menggunakan panduan di bawah "Manajemen penerbit tepercaya untuk autentikasi klien" dalam artikel ini.
  • Anda mungkin ingin mempertimbangkan untuk memodifikasi halaman masuk agar sesuai dengan kebutuhan pengguna akhir Anda saat melakukan autentikasi sertifikat. Kasus umum adalah untuk (a) Mengubah 'Masuk dengan sertifikat X509 Anda' menjadi sesuatu yang lebih ramah pengguna akhir

Mengonfigurasi Autentikasi Sertifikat Tanpa Hambatan untuk browser Chrome di Windows Desktops

Ketika beberapa sertifikat pengguna (seperti sertifikat Wi-Fi) ada di komputer yang memenuhi tujuan autentikasi klien, browser Chrome di desktop Windows akan meminta pengguna untuk memilih sertifikat yang tepat. Ini mungkin membingungkan pengguna akhir. Untuk mengoptimalkan pengalaman ini, Anda dapat menetapkan kebijakan bagi Chrome untuk memilih sertifikat yang tepat secara otomatis untuk pengalaman pengguna yang lebih baik. Kebijakan ini dapat diatur secara manual dengan membuat perubahan registri atau dikonfigurasi secara otomatis melalui GPO (untuk mengatur kunci registri). Ini mengharuskan sertifikat klien pengguna Anda untuk autentikasi terhadap Layanan Federasi Direktori Aktif memiliki penerbit yang berbeda dari kasus penggunaan lainnya.

Untuk informasi selengkapnya tentang mengonfigurasi ini untuk Chrome, silakan lihat tautan ini.

Memecahkan masalah Autentikasi Sertifikat

Dokumen ini berfokus pada masalah umum pemotretan masalah umum ketika LAYANAN Federasi Direktori Aktif dikonfigurasi untuk autentikasi sertifikat untuk pengguna.

Periksa apakah penerbit Sertifikat Tepercaya dikonfigurasi dengan benar di semua server AD FS/WAP

Gejala Umum: HTTP 204 "Tidak ada konten dari https://certauth.adfs.contoso.com"

Layanan Federasi Direktori Aktif menggunakan sistem operasi windows yang mendasar untuk membuktikan kepemilikan sertifikat pengguna dan memastikan bahwa ia cocok dengan penerbit tepercaya dengan melakukan validasi rantai kepercayaan sertifikat. Untuk mencocokkan penerbit tepercaya, Anda harus memastikan bahwa semua otoritas akar dan menengah dikonfigurasi sebagai penerbit tepercaya di penyimpanan otoritas sertifikasi komputer lokal. Untuk memvalidasi ini secara otomatis, silakan gunakan alat Ad FS Diagnostic Analyzer. Alat ini meminta semua server dan memastikan bahwa sertifikat yang tepat disediakan dengan benar.

  1. Unduh dan jalankan alat sesuai instruksi yang disediakan dalam tautan di atas
  2. Upload hasilnya dan tinjau untuk setiap kegagalan

Periksa apakah Autentikasi Sertifikat diaktifkan dalam kebijakan autentikasi LAYANAN Federasi Direktori Aktif

Layanan Federasi Direktori Aktif tidak mengaktifkan autentikasi sertifikat secara default. Lihat awal dokumen ini tentang cara mengaktifkan autentikasi sertifikat.

Periksa apakah Autentikasi Sertifikat diaktifkan dalam kebijakan autentikasi LAYANAN Federasi Direktori Aktif

Layanan Federasi Direktori Aktif melakukan autentikasi sertifikat pengguna secara default pada port 49443 dengan nama host yang sama dengan LAYANAN Federasi Direktori Aktif (misalnya adfs.contoso.com). Anda juga dapat mengonfigurasi Layanan Federasi Direktori Aktif untuk menggunakan port 443 (port HTTPS default) menggunakan pengikatan SSL alternatif. Namun, URL yang digunakan dalam konfigurasi ini adalah certauth.<adfs-farm-name> (misalnya certauth.contoso.com). Lihat tautan ini untuk informasi selengkapnya. Kasus konektivitas jaringan yang paling umum adalah bahwa firewall telah dikonfigurasi dengan salah dan memblokir atau mengganggu lalu lintas autentikasi sertifikat pengguna. Biasanya, Anda akan melihat layar kosong atau kesalahan server 500 ketika masalah ini terjadi.

  1. Perhatikan nama host dan port yang telah Anda konfigurasi di Layanan Federasi Direktori Aktif
  2. Pastikan bahwa firewall apa pun di depan Layanan Federasi Direktori Aktif atau Proksi Aplikasi Web (WAP) dikonfigurasi untuk memungkinkan hostname:port kombinasi untuk farm Layanan Federasi Direktori Aktif Anda. Anda harus merujuk ke teknisi jaringan Anda untuk melakukan langkah ini.

Periksa Konektivitas Daftar Pencabutan Sertifikat

Daftar Pencabutan Sertifikat (CRL) adalah titik akhir yang dikodekan ke dalam sertifikat pengguna untuk melakukan pemeriksaan pencabutan runtime. Misalnya, jika perangkat yang berisi sertifikat dicuri, administrator dapat menambahkan sertifikat ke daftar sertifikat yang dicabut. Setiap titik akhir yang menerima sertifikat ini sebelumnya sekarang akan gagal autentikasi.

Setiap layanan federasi direktori aktif dan server WAP harus mencapai titik akhir CRL untuk memvalidasi apakah sertifikasi yang disajikan kepadanya masih valid dan belum dicabut. Validasi CRL dapat terjadi melalui HTTPS, HTTP, LDAP atau melalui OCSP (Protokol Status Sertifikat Online). Jika server AD FS/WAP tidak dapat mencapai titik akhir, autentikasi akan gagal. Ikuti langkah-langkah di bawah ini untuk memecahkan masalahnya.

  1. Konsultasikan dengan teknisi PKI Anda untuk menentukan titik akhir CRL yang digunakan untuk mencabut sertifikat pengguna dari sistem PKI Anda.
  2. Pada setiap server AD FS/WAP pastikan bahwa titik akhir CRL dapat dijangkau melalui protokol yang digunakan (biasanya HTTPS atau HTTP)
  3. Untuk validasi tingkat lanjut, aktifkan pengelogan peristiwa CAPI2 di setiap server AD FS/WAP
  4. Periksa ID Peristiwa 41 (Verifikasi Pencabutan) di log operasional CAPI2
  5. Periksa ‘\<Result value="80092013"\>The revocation function was unable to check revocation because the revocation server was offline.\</Result\>'

Tips: Anda dapat menargetkan satu server AD FS atau WAP untuk pemecahan masalah yang lebih mudah dengan mengonfigurasi resolusi DNS (file HOSTS di Windows) untuk menunjuk ke server tertentu. Ini memungkinkan Anda mengaktifkan pelacakan yang menargetkan server.

Periksa apakah ini masalah Indikasi Nama Server (SNI)

Layanan Federasi Direktori Aktif memerlukan perangkat klien (atau browser) dan load balancer untuk mendukung SNI. Beberapa perangkat klien (biasanya versi Android yang lebih lama) mungkin tidak mendukung SNI. Selain itu, load balancer mungkin tidak mendukung SNI atau belum dikonfigurasi untuk SNI. Dalam kasus ini, Anda mungkin melihat kegagalan sertifikasi pengguna.

  1. Bekerja dengan teknisi jaringan Anda untuk memastikan bahwa Load Balancer untuk LAYANAN Federasi Direktori Aktif/WAP mendukung SNI
  2. Jika SNI tidak dapat didukung Layanan Federasi Direktori Aktif memiliki pekerjaan dengan mengikuti langkah-langkah di bawah ini
    • Buka jendela prompt perintah yang ditingkatkan di server AD FS utama
    • Ketik Netsh http show sslcert
    • Salin 'GUID aplikasi' dan 'hash sertifikat' dari layanan federasi
    • Ketik netsh http add sslcert ipport=0.0.0.0:{your_certauth_port} certhash={your_certhash} appid={your_applicaitonGUID}

Periksa apakah perangkat klien telah disediakan dengan sertifikat dengan benar

Anda mungkin melihat bahwa beberapa perangkat berfungsi dengan benar tetapi perangkat lain tidak. Dalam hal ini, biasanya merupakan hasil dari sertifikat pengguna yang tidak disediakan dengan benar pada perangkat klien. Ikuti langkah di bawah.

  1. Jika masalah ini khusus untuk perangkat Android, masalah yang paling umum adalah bahwa rantai sertifikat tidak sepenuhnya tepercaya pada perangkat Android. Lihat vendor MDM Anda untuk memastikan bahwa sertifikat telah disediakan dengan benar dan seluruh rantai sepenuhnya dipercaya pada perangkat Android.
  2. Jika masalah ini khusus untuk perangkat Windows, periksa apakah sertifikat disediakan dengan benar dengan memeriksa Windows Cert Store untuk pengguna yang masuk (bukan sistem/komputer).
  3. Ekspor sertifikat pengguna klien ke file .cer dan jalankan perintah 'certutil -f -urlfetch -verify certificatefilename.cer'

Periksa apakah versi TLS kompatibel antara server AD FS/WAP dan perangkat klien

Dalam kasus yang jarang terjadi, perangkat klien (biasanya perangkat seluler) diperbarui untuk hanya mendukung versi TLS yang lebih tinggi (misalnya 1.3) atau Anda mungkin memiliki masalah terbalik di mana server AD FS/WAP diperbarui untuk hanya menggunakan versi TLS yang lebih tinggi dan perangkat klien tidak mendukungnya. Anda dapat menggunakan alat SSL online untuk memeriksa server AD FS/WAP Anda dan melihat apakah itu kompatibel dengan perangkat. Untuk informasi selengkapnya tentang cara mengontrol versi TLS, lihat tautan ini.

Periksa apakah Azure AD PromptLoginBehavior dikonfigurasi dengan benar pada pengaturan domain federasi Anda

Banyak aplikasi Office 365 mengirim prompt=login ke Azure AD. Azure AD, secara default, mengonversinya menjadi login kata sandi baru ke Layanan Federasi Direktori Aktif. Akibatnya, bahkan jika Anda telah mengonfigurasi autentikasi sertifikat di Layanan Federasi Direktori Aktif, pengguna akhir Anda hanya akan melihat login kata sandi.

  1. Dapatkan pengaturan domain federasi menggunakan perintah 'Get-MsolDomainFederationSettings' memungkinkan
  2. Pastikan parameter PromptLoginBehavior diatur ke salah satu dari 'Disabled' atau 'NativeSupport'

Untuk informasi selengkapnya, lihat tautan ini.

Pemecahan Masalah Tambahan

Ini adalah kejadian langka

  1. Jika daftar CRL Anda sangat panjang, itu mungkin mencapai waktu habis saat mencoba mengunduh. Dalam hal ini Anda perlu memperbarui 'MaxFieldLength' dan 'MaxRequestByte' sesuai https://support.microsoft.com/help/820129/http-sys-registry-settings-for-windows

Referensi: Daftar lengkap jenis klaim sertifikat pengguna dan nilai contoh

Jenis klaim Contoh Nilai
https://schemas.microsoft.com/2012/12/certificatecontext/field/x509version 3
https://schemas.microsoft.com/2012/12/certificatecontext/field/signaturealgorithm sha256RSA
https://schemas.microsoft.com/2012/12/certificatecontext/field/issuer CN=entca, DC=domain, DC=contoso, DC=com
https://schemas.microsoft.com/2012/12/certificatecontext/field/issuername CN=entca, DC=domain, DC=contoso, DC=com
https://schemas.microsoft.com/2012/12/certificatecontext/field/notbefore 12/05/2016 20:50:18
https://schemas.microsoft.com/2012/12/certificatecontext/field/notafter 12/05/2017 20:50:18
https://schemas.microsoft.com/2012/12/certificatecontext/field/subject E=user@contoso.com, CN=user, CN=Users, DC=domain, DC=contoso, DC=com
https://schemas.microsoft.com/2012/12/certificatecontext/field/subjectname E=user@contoso.com, CN=user, CN=Users, DC=domain, DC=contoso, DC=com
https://schemas.microsoft.com/2012/12/certificatecontext/field/rawdata {Base64 encoded digital certificate data}
https://schemas.microsoft.com/2012/12/certificatecontext/extension/keyusage DigitalSignature
https://schemas.microsoft.com/2012/12/certificatecontext/extension/keyusage KeyEncipherment
https://schemas.microsoft.com/2012/12/certificatecontext/extension/subjectkeyidentifier 9D11941EC06FACCB1B116B56AA97F3987D620A
https://schemas.microsoft.com/2012/12/certificatecontext/extension/authoritykeyidentifier KeyID=d6 13 e3 6b bc e5 d8 15 52 0a fd 36 6a d5 0b 51 f3 0b 25 7f
https://schemas.microsoft.com/2012/12/certificatecontext/extension/certificatetemplatename Pengguna
https://schemas.microsoft.com/2012/12/certificatecontext/extension/san Nama Lain:Nama Utama=user@contoso.com, Nama RFC822=user@contoso.com
https://schemas.microsoft.com/2012/12/certificatecontext/extension/eku 1.3.6.1.4.1.311.10.3.4