メインコンテンツへスキップ
記事一覧へ戻る

Identity Brokering ให้ Keycloak รับ Login จากระบบอื่น

identity brokering เชื่อมผู้ให้บริการตัวตนภายนอกกับ realm ของ Keycloak อธิบายหลักการใช้งาน กรณีที่เหมาะ และข้อควรระวังจากเอกสารทางการ

Identity Brokering ให้ Keycloak รับ Login จากระบบอื่น

identity brokering เชื่อมผู้ให้บริการตัวตนภายนอกกับ realm ของ Keycloak เหมาะกับการรวมบัญชีองค์กรหรือเพิ่ม social login โดยแอปยังคุยกับ Keycloak จุดเดียว บทความนี้สรุปแนวคิดจากเอกสารทางการของ Keycloak และจุดที่ควรตรวจเมื่อนำไปใช้จริง

ภาพรวม

Keycloak จัดการการยืนยันตัวตนและออก token ให้แอป การตั้ง client, realm, session และสิทธิ์ต้องสอดคล้องกับการตรวจสอบฝั่ง API

หัวข้อนี้ตอบโจทย์เฉพาะเรื่อง: identity brokering เชื่อมผู้ให้บริการตัวตนภายนอกกับ realm ของ Keycloak จึงควรเริ่มจากปัญหาที่ต้องแก้และผลลัพธ์ที่คาดหวัง ไม่ใช่เพียงเปิดฟีเจอร์เพราะมีอยู่ในเครื่องมือ

หลักการทำงาน

ผู้ใช้ยืนยันตัวตนกับ IdP ภายนอกแล้ว Keycloak ผูกผลเข้ากับบัญชีภายใน

ให้ตรวจทั้งสถานะที่เครื่องมือรายงานและผลลัพธ์ปลายทางที่ผู้ใช้หรือระบบอื่นได้รับ หากสองส่วนไม่ตรงกัน ควรกลับไปตรวจค่าตั้งต้นและขอบเขตที่ฟีเจอร์นี้รับผิดชอบก่อนเปลี่ยนค่าเพิ่มเติม

เหมาะกับงานแบบไหน

เหมาะกับการรวมบัญชีองค์กรหรือเพิ่ม social login โดยแอปยังคุยกับ Keycloak จุดเดียว

ก่อนทดลอง ให้ระบุสิ่งที่จะใช้วัดผล เช่น เวลาตอบสนอง ความพร้อมใช้งาน ความถูกต้องของข้อมูล หรือภาระการดูแล แล้วเทียบกับสภาพเดิม วิธีนี้ช่วยให้รู้ว่าฟีเจอร์แก้ปัญหาจริงหรือย้ายภาระไปอีกจุดหนึ่ง

ขั้นตอนนำไปใช้

  1. ทดลอง flow กับบัญชีทดสอบที่มีสิทธิ์ต่างกัน
  2. ตรวจ redirect URI, อายุ token และการปฏิเสธคำขอที่ API
  3. เตรียมวิธีกู้บัญชีผู้ดูแลและ rollback การตั้งค่า realm

เริ่มจากขอบเขตเล็กและเก็บผลทดสอบไว้กับการเปลี่ยนแปลง หากจะใช้ใน production ให้กำหนดผู้ติดตามผลและเงื่อนไขที่จะหยุดการขยายการใช้งาน

ข้อควรระวัง

วางนโยบายการเชื่อมบัญชีและตรวจ email verification เพื่อลดการสวมบัญชี

แปลงข้อควรระวังนี้เป็นรายการตรวจในการทบทวนงาน เพราะปัญหาจากค่าตั้งต้นอาจไม่แสดงทันทีในสภาพแวดล้อมทดสอบ

สรุป

identity brokering เชื่อมผู้ให้บริการตัวตนภายนอกกับ realm ของ Keycloak เหมาะกับการรวมบัญชีองค์กรหรือเพิ่ม social login โดยแอปยังคุยกับ Keycloak จุดเดียว ก่อนนำไปใช้กับงานหลัก ควรตรวจผลตามขั้นตอนข้างต้นและทบทวนข้อจำกัดของระบบที่มีอยู่

อ่านเพิ่มเติม: เอกสารทางการของ Keycloak