
เนื่องจาก Netway ซึ่งเป็น Partner กับทาง Zendesk ในการให้บริการระบบ support แบบ Omnichannel ที่โดดเด่นที่สุดในตลาด software ประเภทเดียวกัน เราจึงพัฒนาคู่มือในการใช้งาน Zendesk ในด้านต่างๆเพื่ออำนวยความสะดวกแก่ลูกค้า เพื่อให้การเชื่อมต่อทุกการใช้งานมีความต่อเนื่อง
ในบทความนี่เราขอนำเสนอการใช้ระบบ login ของ Zendesk กับ Active Directory ของ Microsoft ด้วย JWT (JSON Web Token) เพื่อใช้ในการอ้างอิงและนำไปใช้งานจริงได้
เนื่องจากในบางองค์กรมีการใช้งาน Microsoft Active Directory สำหรับกำหนอ user และ permission ในการเข้าใช้งาน Resource ต่างๆในองค์กร เช่น สิทธิ์การเข้าใช้งาน windows การติดตั้งโปรแกรม
ซึ่งตัว Microsoft Active Directory จะเป็นตัวจัดการ username password ของพนักงานรวมไว้ที่เดียว ดังนั้นการนำ Zendesk มาใช้กับองค์กร ตัว Zendesk ก็รองรับการทำ single sign-on กับ Active Directory มาให้ด้วย ทั้งนี้เพื่อให้การจัดการ user ทำได้ง่าย
ในเอกสารชุดนี้ขอกล่าวถึงการทำ single sign-on เท่านั้นยังไม่รวมถึงการกำหนดสิทธิ์ต่างๆผ่าน Active Directory นะครับ
การที่ Zendesk จะติดต่อ AD Server ได้นั้นจะต้องทำผ่าน Web Browser ดังนั้นเครื่อง AD Server จะต้องสามารถเข้าถึงได้จาก Internet
จัดการ Domain
เพื่อทำให้เครื่อง Windows Server สามารถเข้าถึงได้จาก Internet เราได้ทำการชี้ Sub domain มาที่เครื่อง Server โดยเข้าไปเพื่อ CNAME เช่น
CNAME: ldap.netway.co.th
IP: 203.78.98.213
*** สำหรับ domain ที่จดกับ netway.co.th สามารถเข้าไปจัดการได้ที่ client area ได้เลย
ที่เครื่อง Windows Server กดที่ Windows menu แล้วพิมพ์ Server Manager

คลิกที่ Add roles and features -> next -> เลือก server ที่จะติดตั้ง feature ส่วนมากจะมี server เดียวซึ่งก็คือ local server
เลือก feature ที่ต้องการติดตั้ง
Application Development
ASP.NET
ASP
Server Side Includes
Security
Basic Authentication
Zendesk จะอนุญาติให้ติดต่อกับเว็บไซต์อื่นผ่าน protocol https เท่านั้น ดังนั้นเราจำเป็นจะต้องติดตั้ง SSL ให้กับ default site เพื่อให้สามารถใช้งานได้

*** สอบถามรายละเอียด SSL ได้ที่ฝ่ายขาย https://ssl.in.th
ทำการ Download bundles script ของ zendesk จาก github ที่ url https://github.com/zendesk/zendesk_jwt_sso_examples/tree/master/bundles
ซึ่งเป็น script classic asp นำมา unzip ไว้ที่ C:\inetpub\wwwroot\zendesk\iis_ad_asp_jwt ซึ่งเป็น Default site web path

แก้ไข config ไฟล์ classic_asp_jwt_with_ad.asp โดยกำหนดค่าดังต่อไปนี้

' Set your shared secret and Zendesk subdomain
sKey =ค่า key ที่ได้จาการตั้งค่าใน zendesk ซึ่งมีรายละเอียดในหัวข้อถุดไป
sSubdomain = ค่า subdomain ที่สมัครใช้งานไว้กับ Zendesk เช่น https://support.netway.co.th sudomain คือ netway
' Credentials for a domain user for LDAP access
sLdapReaderUsername = LDAP Admin user ในที่นี้เราใช้ netway\prasit
sLdapReaderPassword =LDAP Admin password

เนื่องด้วยระบบความปลอดภัยของ Browser ในปัจจุบันทำให้การเข้าถึงข้อมูล LDAP ของ user ไม่สามารถทำได้ทันที จำเป็นต้อง enable basic authentication และ disable anonymous authentication

เมื่อเตรียม web server และ script เรียบร้อยแล้วขั้นตอนต่อมาคือการตั้งค่า Zendesk ให้รองรับการทำ single sign on โดยจะตั้งเฉพาะสำหรับ Agent เท่านั้น ผู้ใช้ที่ติดต่อเข้ามาหรือที่เรียกว่า customer ยัังสามารถใช้การ login เข้ามาแบบปกติได้
ไปที่ zendesk admin account เช่น https://netway+ad.zendesk.com/agent

ที่ admin -> setting -> security -> admin & agent เลือก single sign-on แบบ JWT
ระบุ url ที่เราได้เตรียมไว้ที่ windows server เช่น https://ldap.netway.co.th/zendesk/iis_ad_asp_jwt/classic_asp_jwt_with_ad.asp
ในขั้นตอนนี้ Zendesk จะ Generate Shared secret มาให้ นำ key นี้ไปไส่ใน config ที่ไฟล์ classic_asp_jwt_with_ad.asp
![]()
ทำการบันทึก
ต้องทำการเตรียม User Agent บน Zendesk ที่ใช้ email เดียวกับ AD เพื่อให้ข้อมูลเชื่อมถึงกัน โดยไปที่ Admin -> setting -> people -> add user

เรียกไปที่ Zendesk account agent url เช่น https://netway+ad.zendesk.com/agent

browser จะขึ้น popup ให้ระบุ username password เจ้าหน้าที่จะต้องระบุ username password ของ Active Directory ให้ถูกต้องจึงจะสามารถเข้าใช้งานได้

ข้อมูลอ้างอิง
Configure Zendesk for your Active Directory/Microsoft environment
Admin Istrator