Sorun Tanımı:
SCCM konsolundan veya browser üzerinden rapor alınmaya çalıştığında ilk seferde hata alınması. Rapor tekrar çalıştırıldığında hatasız şekilde alınması. Ancak aradan belli bir süre geçtikten sonra rapor tekrar çalıştırılınca yine hata alınması. Bu durum rapor için oluşturulan subscription lara da etki etmektedir.
Konsolda:
Browserda:
Hata Mesajı :
An error has occurred during report processing.
--->
Microsoft.ReportingServices.ReportProcessing.ProcessingAbortedException: An error
has occurred during report processing. --->
Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Cannot
create a connection to data source
'AutoGen__5C6358F2_4BB6_4a1b_A16E_8D96795D8602_'. --->
System.Data.SqlClient.SqlException: A connection was successfully established
with the server, but then an error occurred during the pre-login handshake.
(provider: SSL Provider, error: 0 - The wait operation timed out.) --->
System.ComponentModel.Win32Exception: The wait operation timed out
Analiz:
Raporlama sırasında client ile sunucu arasındaki TLS handshake işleminde 15 saniyelik bir gecikme gözükmektedir.
Hata anında SSRS - Reporting Service kurulu olan sunucunun ctldl.windowsupdate.com adresine çıkmaya çalıştığı trace loglarında görülmüştür.
Event Viewer'da Application and Service Logs -> Microsoft -> Windows -> CAPI2 aktif edilirse
raporlama anında Event ID 53 ile aşağıdaki hata gözlenebilir.
TLS Handshake sırasında sertifika kontrolü yapabilmek için Windows OS default davranış olarak CTL güncel listesini indirebilmek amacıyla kendi sunucusuna yönleniyor. Sunucunun internet çıkışı yoksa veya iç ortamda CTL için bir URL set edilmemişse 15 saniyelik timeout süresi boyunca bekleyip raporun hata almasına sebep oluyor.
Çözüm:
1- Reporting Service rolü kurulu olan sunucunun
adresine gidebilmesi için internete çıkış yetkisi verilmelidir.
2- Eğer internete çıkış istenmiyorsa iç ortama CTL dağıtımı için distribution point tanımlanmalıdır.
3- Workaround olarak;
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\SystemCertificates\AuthRoot
“EnableDisallowedCertAutoUpdate”=dword:00000000
“DisableRootAutoUpdate”=dword:00000001
değerleri oluşturulabilir. Bu önerilen yöntem değildir , geçici çözüm olarak uygulanabilir.



0 yorum:
Yorum Gönder