Single Sign-On (SSO) คืออะไร? ทำความรู้จักระบบการเข้าสู่ระบบครั้งเดียว
สรุปใจความสำคัญ
- SSO ช่วยให้ผู้ใช้เข้าถึงหลายระบบด้วยการยืนยันตัวตนเพียงครั้งเดียว
- ความแตกต่างหลักระหว่าง SSO และ Directory Server Authentication คือการส่ง Token เพื่อลดการป้อนรหัสผ่านซ้ำ
- ความเสี่ยงสูงสุดของ SSO คือหากรหัสผ่านหลักถูกขโมย ผู้โจมตีจะสามารถเข้าถึงได้ทุกระบบที่เชื่อมต่อไว้ (Single Point of Failure)
Single Sign-On (SSO) หรือการเข้าสู่ระบบครั้งเดียว คือรูปแบบการยืนยันตัวตน (Authentication) ที่ช่วยให้ผู้ใช้สามารถเข้าถึงระบบซอฟต์แวร์หลายระบบที่เกี่ยวข้องกัน แต่เป็นอิสระต่อกัน โดยใช้เพียง ID และรหัสผ่านชุดเดียวเท่านั้น

การทำงานของ SSO vs Directory Server Authentication
หลายคนมักสับสนระหว่าง SSO กับ Directory Server Authentication (หรือ Same-sign on) ซึ่งมีความแตกต่างกันดังนี้:
- Directory Server Authentication: ผู้ใช้ต้องป้อนรหัสผ่านทุกครั้งที่เข้าใช้งานแอปพลิเคชัน แต่ใช้รหัสผ่านชุดเดียวกันที่ถูกเก็บไว้ในเซิร์ฟเวอร์กลาง (เช่น LDAP)
- Single Sign-On (SSO): ผู้ใช้ยืนยันตัวตนเพียงครั้งเดียว และระบบจะส่ง Token การยืนยันตัวตนไปยังแอปพลิเคชันต่างๆ ที่กำหนดไว้ ทำให้ผู้ใช้เข้าถึงบริการได้โดยไม่ต้องป้อนรหัสผ่านซ้ำ
ประโยชน์ของ Single Sign-On
การนำ SSO มาใช้ในองค์กรหรือบริการออนไลน์มีข้อดีหลายประการ ได้แก่:
- ลดความเหนื่อยล้าจากรหัสผ่าน (Password Fatigue): ผู้ใช้ไม่ต้องจดจำรหัสผ่านจำนวนมากสำหรับหลายบัญชี
- เพิ่มประสิทธิภาพการทำงาน: ลดเวลาที่ต้องเสียไปกับการป้อนรหัสผ่านซ้ำๆ
- ลดภาระงานของ IT Help Desk: ลดจำนวนการแจ้งปัญหาเรื่องลืมรหัสผ่าน
- ลดความเสี่ยงในการจัดการรหัสผ่านภายนอก: ในกรณีของ Federated Authentication รหัสผ่านจะไม่ถูกเก็บไว้ที่เว็บไซต์บุคคลที่สาม
ข้อควรระวังและข้อวิจารณ์
แม้จะมีข้อดีมากมาย แต่ SSO ก็มีจุดอ่อนที่ต้องระวัง:
1. ความเสี่ยงแบบ "กุญแจดอกเดียวเปิดได้ทุกประตู" (Keys to the Castle)
หากบัญชี SSO ของผู้ใช้ถูกขโมย ผู้โจมตีจะสามารถเข้าถึงทุกระบบที่เชื่อมต่อกับ SSO นั้นได้ทันที ดังนั้นจึงควรใช้ร่วมกับ การยืนยันตัวตนแบบหลายปัจจัย (Multi-Factor Authentication - MFA) เช่น Smart Cards หรือ One-Time Password (OTP)
2. การพึ่งพาเซิร์ฟเวอร์กลาง
หากเซิร์ฟเวอร์ยืนยันตัวตนกลางล่ม ผู้ใช้จะไม่สามารถเข้าถึงระบบทั้งหมดที่ใช้ SSO ได้ ซึ่งอาจเป็นปัญหาใหญ่สำหรับระบบที่ต้องการความพร้อมใช้งานสูง (High Availability) เช่น ระบบควบคุมโรงงาน
3. ข้อจำกัดด้านการเข้าถึง
การใช้ SSO ผ่านโซเชียลมีเดีย (เช่น Facebook Connect) อาจทำให้เข้าใช้งานไม่ได้ในสถานที่ที่บล็อกโซเชียลมีเดีย เช่น โรงเรียน หรือในประเทศที่มีการเซ็นเซอร์อินเทอร์เน็ตอย่างเข้มงวด
ความปลอดภัยของ SSO
ระบบ SSO มีความเสี่ยงด้านความปลอดภัยที่ต้องพิจารณา เช่น ช่องโหว่ Covert Redirect ที่เกี่ยวข้องกับ OAuth 2.0 และ OpenID ซึ่งอาจนำไปสู่การโจมตีแบบ Cross-Site Scripting (XSS) และการขโมย Session Token เพื่อทำการ Session Hijacking
คำถามที่พบบ่อย
SSO แตกต่างจาก Same-sign on อย่างไร?
Same-sign on (Directory Server Authentication) คือการใช้รหัสผ่านชุดเดียวกันในทุกแอปพลิเคชัน แต่ยังต้องป้อนรหัสผ่านทุกครั้ง ส่วน SSO คือการยืนยันตัวตนครั้งเดียวแล้วเข้าถึงได้ทุกแอปพลิเคชันโดยไม่ต้องป้อนรหัสผ่านซ้ำ
ถ้าเซิร์ฟเวอร์ SSO ล่มจะเกิดอะไรขึ้น?
ผู้ใช้จะไม่สามารถเข้าถึงแอปพลิเคชันทุกตัวที่เชื่อมต่อกับระบบ SSO นั้นได้ ยกเว้นว่าระบบจะมีการตั้งค่า Session Failover เพื่อรองรับเหตุการณ์ดังกล่าว
จะเพิ่มความปลอดภัยให้ระบบ SSO ได้อย่างไร?
ควรใช้การยืนยันตัวตนแบบหลายปัจจัย (MFA) เช่น การใช้ OTP หรือแอปยืนยันตัวตน เพื่อป้องกันกรณีที่รหัสผ่านหลักถูกขโมย

