ADFS Certificate Renewal yazımızda ADFS ait olan sertifikaların nasıl yenileneceğini, yenileme aşamasında yaşanan problemlerden bahsedeceğiz. ADFS üzerinde bildiğimiz gibi SSL yada Service Communication , Signing ve Decrypting sertifikaları bulunmaktadır. Her birini yenilenme süreçleri farklıdır. Bu aşamada dikkat edilmesi gereken yerler vardır.
Service Communication (SSL) yenilenmesi
İlk olarak SSL sertifikasının yenilenmesinden bahsedeceğiz. ADFS sunucuların ve WAP sunucularının kendi aralarında konuşmasını sağlayan sertifikamızdır. Bu sertifikanın yenilenmesinde izlenen yollar aşağıda anlatılmıştır.
İlk önce Claim ile çalışan bir web application sayfamızda deneme yapacağız. Sayfaya ADFS ile login oldum ve tüm claimleri görebilmekteyim.
Oluşturulan sertifikanın Manage Private Key dayarından ADFS servis userımızın yetkilerini kontrol ediyoruz.
Konsolda Set service communications Certificate kısmından yeni sertifikamızı seçiyoruz. Bu aşamadan sonra Thumbprint kısımları bizler için çok önemli olacaktır. Sertifikamızın thumbprint kısmını bir yere kesinlikle saklayanız.
Sertifikamızı görüntülemek için;
Get-AdfsCertificate
Sıra geldi bu sertifikanın set edilmesini double check ediyoruz.
Bu işlem yapılmadan önce sertifikanın FARM daki tüm ADFS sunucularında olması gerekmektedir.
Set-AdfsSslCertificate -Thumbprint "Thumbprint buray yazıyoruz"
Son olarak ADFS servisine restart atıyoruz.
Sertifikanın kontrolünü sağlıyoruz.
Yeniden application tarafını yöneldiğimizde Web Browser de yeni sertifikanın kontrolünü görüyoruz. Login işleminden sonra herhangi bir sıkıntı gözükmemekte.
Son Not bu sertifikanın WAP sunucularınız varsa ondada yüklenmesi gerekmektedir. Sertifikanın WAP sunuculara atılıp aşağıdaki komutu çalıştırmanız gerekmektedir.
Set-WebApplicationProxySslCertificate -Thumbprint "thumbprint girilir"
Signing and Encryption Sertifikası Yenilenmesi
Geldik tehlikeli sulara bu sertifika çoğu yerde kullanıldığından uygulama sahipleri ile beraber kontrol edilmesi gerekmektedir. ADFS relying party trust altındaki tüm uygulamaların değişmesi gerekmektedir.
Bu sertifikaların yenilenme süreçleri biraz farklıdır. Hadi başlayalım….
İlk olarak web.config bulunan TrustedIssuers kısmını kontrol ediyoruz. Eski sertifikamızın thumbprint’i bulunmaktadır.
Can alıcı Bölmeye geldik.
İlk olarak token-signing ve token-decrypting sertifikasının ayarlarına;
- AutoCertificateRollover : True ——–Kendisini yenilemesini True yada False olarak ayarlanır.
- CertificateCriticalThreshold : 2 ————– Eğer 2 kalırsa kendini yeniler ve hemen promote eder.
- CertificateDuration : 365 —————- Ne kadar süre geçerli olacağı belirtilir. 1 yıldır değişiklik yapılabilir.
- CertificateGenerationThreshold : 20 ——-Bitimine 20 gün kala yeniden generate etmektedir.
- CertificatePromotionThreshold : 5 ——- 5 Gün kala promotion eder kendini
- CertificateRolloverInterval : 720—– 720 dakikada bir sertifika kontrolü yapar.
Şimdi sıra yenilemede ;
İlk olarak Duration değişikliği ile sertifika ömrünü 3 yıla çıkartıyoruz. Daha sonrasında sertifikaları update ediyoruz.
Eğer update etmekte sıkıntı yaşarsanız ; AutoCertificateRollover değerinin true olup olmadığını kontrol ediniz.
Set-AdfsProperties -AutoCertificateRollover $true
Set-AdfsProperties -CertificateDuration 1095
Update-AdfsCertificate -CertificateType token-signing
Update-AdfsCertificate -CertificateType token-decrypting
Şimdi konsolda 2 tane sertifika göreceğiz. Bir tanesi primary diğeri secondary olacaktır. Biz primary olmayanlarla ilgileneceğiz çünkü bizim oluşturduklarımız secondary olmuştur. Aşağıdaki komutla secondary olanların Thumbprint bir yere kaydedin.
Get-AdfsCertificate | ? {$_.Isprimary -eq $false} | select certificatetype,thumprint
İşte güncelleme zamanı; Secondary sertifikaları primary yapıyoruz.
Set-AdfsProperties -AutoCertificateRollover $false
Set-AdfsCertificate -CertificateType Token-Signing -Thumbprint "thumprint girilir." -isPrimary
Set-AdfsCertificate -CertificateType Token-Decrypting-Thumbprint "thumprint girilir." -isPrimary
Konsoldan kontrol edebilirsiniz.
Test zamanı ilk olarak test ettiğimizde hatayla karşılaşacağız. Çünkü web application yeni sertifikaları bilmemektedir. Çok farklı tipte hatalar görebilirsiniz.
Web config üzerindeki sertifikamızın Thumbprint değiştiriyoruz.
Başarılı bir şekilde giriş yapabildik. Tebrikler!!!!!!!
Sonuç olarak ADFS Certificate Renewal nasıl yapılır ve karşılaşılan sorunlar nelerdir bunlardan kısaca bahsettik. Diğer yazılarımızı aşağıdaki kategorilerden takip edebilirsiniz.