Bu gönderi, sunucunun güvendiği bir istemci sertifikası gerektiren bir web sitesini başarıyla kurduğunuzu varsaymaktadır.
Zaten sahip değilseniz, IIS ve IIS Express'te istemci sertifikaları oluşturmak ve bunlara izin vermek için bu gönderiye bakın: https://stackoverflow.com/a/57311258/3850405
Bunun çalışması için bazılarının IIS Client Certificate Mapping Authentication
etkinleştirilmesi gerektiğini söylüyorlar, ancak bunu Windows Server 2012 R2 Datacenter'da denedim ve yine de çalıştı. Ancak bunun eklemek iyi olduğunu düşünüyorum ve önerilen yaklaşım böylece işleviyle eklemek olduğunu Add Roles and Features
ya Turn Windows features on or off
da işletim sistemi bağımlı.
https://docs.microsoft.com/en-us/iis/configuration/system.webserver/security/authentication/iisclientcertificatemappingauthentication/onetoonemappings/
Sitenize IIS Yöneticisi'nden giderek başlayın ve Yapılandırma Düzenleyici'yi tıklayın.
Oradan Bölüme gidin system.webServer/security/authentication/iisClientCertificateMappingAuthentication
ya da dizeyi Bölüm alanına yapıştırın.
Etkin olarak ayarlayın True
ve ardından bir ekleyin oneToOneMappings
.
Sertifika özelliği için değer elde etmek için mmc.exe dosyasını başlatın ve istemci sertifikanızı verin. Mine, Yerel Bilgisayar için Kişisel sertifikalarında bulunmaktadır.
File -> Add or Remove Snap-ins -> Certificates -> Add -> Computer account -> Local computer
Certificates (Local Computer) -> Personal -> Certificates -> Right click on your client certificate -> All tasks -> Export...
Sertifika Verme Sihirbazı açıldığında:
- Sonrakine tıkla.
- Hayır, özel anahtarı verme, ardından İleri'ye tıklayın.
- Dışa aktarma formatı için Base-64 kodlu X.509 9 (.CER) öğesini seçin, ardından İleri'ye tıklayın.
- Sertifikayı masaüstünüze
MyCertificate.cer olarak kaydetmeyi seçin , ardından İleri'ye tıklayın.
- Son'u tıklayın; Dışa aktarmanın başarılı olduğunu söyleyen bir iletişim kutusu görmelisiniz.
Windows Not Defteri'ni kullanarak verdiğiniz MyCertificate.cer dosyasını açın:
- Metnin başından "----- BEGIN CERTIFICATE -----" harfini kaldırın.
- Metnin sonundan "----- END CERTIFICATE -----" harfini kaldırın.
- Tüm satırları tek bir metin satırında birleştirin. İhtiyacınız olan veri budur.
Bunun daha hızlı olduğunu düşündüğümden genellikle Notepad++
hepsini kullanıp kaldırırım \r\n
.
Not Defteri ++ 'da satır çizgilerini nasıl kaldırırım?
https://docs.microsoft.com/en-us/iis/configuration/system.webserver/security/authentication/iisclientcertificatemappingauthentication/onetoonemappings/
Sonra son adım, o bilgisayardaki / sunucudaki bir kullanıcı için yerel bir kullanıcı adı ve parola eklemektir. Sonunda böyle bir şeye benzemelidir.
Değerleri kaydedin ve web siteniz belirli bir müşteri sertifikası gerektirecektir.