วันพฤหัสบดีที่ ๒๑ มกราคม พ.ศ. ๒๕๕๓

วิธีทำให้ SSL Session ID ใน IIS 7 ไม่เปลี่ยน

ถ้ากำหนดให้ Web Site บน IIS 7 ให้ require SSL และ Client Certificate จะพบว่า SSL Session ID เปลี่ยนไปทุกครั้งที่เรียกใช้ ทำให้เกิดปัญหากับอุปกรณ์ Load Balance ที่กำหนด Stickiness ด้วย SSL Session ID

วิธีแก้ไขคือกำหนดค่า "
HKLM\SYSTSEM\CurrentControlSet\services\HTTP\Parameters\SslBindingInfo\0.0.0.0:443\DefaultFlags" เป็น 0x02. (flag 0x02 หมายถึง HTTP_SERVICE_CONFIG_SSL_FLAG_NEGOTIATE_CLIENT_CERT ซึ่งจะ enable การ cache client certificate เพื่อใช้ต่อไป) แล้ว reboot

อ้างอิง http://msdn.microsoft.com/en-us/library/aa364647(VS.85).aspx

วิธีนี้ใช้ได้กับ IIS7 เท่านั้น ส่วน IIS6 จะต้อง set ที่ IIS metabase ค่า SSLAlwaysNegoClientCert เป็น true โดยสั่งคำสั่ง "
cscript.exe adsutil.vbs set W3SVC//SSLAlwaysNegoClientCert "true""

ไม่มีความคิดเห็น: