ทำความเข้าใจกับการจัดสรร Just-in-Time
การจัดสรร Just-in-Time เป็นกระบวนการที่ใช้ในระบบจัดการตัวตนและการเข้าถึงเพื่อสร้างบัญชีผู้ใช้แบบทันทีเมื่อมีการลงชื่อเข้าใช้ระบบเป็นครั้งแรก บทความนี้อธิบายพื้นฐานของการจัดสรร Just-in-Time และตอบคำถามที่พบบ่อยเกี่ยวกับการใช้งาน
ก่อนที่เราจะพูดถึงการจัดสรร Just-in-Time ลองจินตนาการถึงการสร้างแอป SaaS B2B และต้องการรองรับคุณสมบัติการเป็นสมาชิก ช่วยให้สมาชิกเข้าร่วมห้องทำงานของคุณ (tenant) ได้ง่าย คุณจะเสนอคุณสมบัติอะไรบ้าง? ต่อไปนี้คือรายการที่คุณสามารถตรวจสอบได้:
สถานการณ์ | กระบวนการ |
---|---|
การเชิญของผู้ดูแลระบบ | ผู้ใช้สามารถรับคำเชิญทางอีเมลเพื่อเข้าร่วมองค์กร |
การสร้างหรือการนำเข้าผู้ใช้ด้วย API จัดการ | ผู้ใช้สามารถใช้บัญชีผู้ใช้ที่สร้างไว้ล่วงหน้าเพื่อเข้าร่วมองค์กร |
การจัดสรร Just-in-Time | ผู้ใช้ที่เข้าสู่ระบบแอปเป็นครั้งแรกสามารถเข้าร่วมองค์กร |
การซิงค์ไดเรกทอรี (เช่น SCIM) | ใช้งานฟังก์ชันการซิงค์ไดเรกทอรีของ IdP เพื่อจัดเตรียมผู้ใช้ในแอปล่วงหน้า |
การจัดสรร Just-in-Time (JIT) เป็นกระบวนการที่ใช้ในระบบจัดการตัวตนและการเข้าถึงเพื่อสร้างบัญชีผู้ใช้แบบทันทีเมื่อมีการลงชื่อเข้าใช้ระบบเป็นครั้งแรก แทนที่จะจัดเตรียมบัญชีให้ผู้ใช้ล่วงหน้า JIT จัดสรรและกำหนดค่าบัญชีผู้ใช้ที่จำเป็นแบบไดนามิกเมื่อผู้ใช้เข้าสู่ระบบ การจัดสรร Just-in-Time เป็นฟีเจอร์ยอดนิยมที่มีลักษณะเฉพาะ เช่น ประสิทธิภาพการทำงาน ไม่มีการมีส่วนร่วมของผู้ดูแลระบบ และการเป็นสมาชิกองค์กรอัตโนมัติ เป็นต้น ตอนนี้คุณเข้าใจพื้นฐานของการจัดสรร Just-in-Time แล้ว คุณอาจมีคำถามหลายข้อขณะที่คุณเจาะลึกสู่การพัฒนาผลิตภัณฑ์ในโลกจริง ฉันจะตอบคำถามเหล่านี้ซึ่งอาจเป็นที่ถกเถียงกันและขึ้นอยู่กับกรณีธุรกิจเฉพาะของคุณ
คุณจำเป็นต้องใช้การจัดสรร Just-in-Time สำหรับผลิตภั ณฑ์ของคุณหรือไม่?
กรณีเหล่านี้เป็นเรื่องปกติเมื่อสร้างแอป B2B ที่เกี่ยวข้องกับสถาปัตยกรรมแบบ multi-tenant SSO ระดับองค์กร การทำงานร่วมกับองค์กร หรือการมีคุณสมบัติการเข้าร่วมทีม นี่คือตัวอย่างสถานการณ์ที่ลูกค้าของคุณอาจพบ
การเข้าร่วมที่รวดเร็ว
คุณมีลูกค้าที่ประสบปัญหาการจ้างงานบ่อยครั้งหรือการเติบโตที่รวดเร็ว สามารถใช้การจัดสรร JIT เพื่อจัดตั้งบัญชีผู้ใช้สำหรับพนักงานใหม่ได้อย่างรวดเร็ว ลองมาดูตัวอย่างนี้:
Sarah เป็นพนักงานใหม่ที่บริษัท SuperFantasy
ซึ่งใช้ Okta
เป็นผู้ให้บริการตัวตนองค์กร ทีม HR เพิ่มเธอเป็นตัวตนธุรกิจ [email protected]
ใน Okta เพียงครั้งเดียว เมื่อ Sarah ใช้ อีเมลนี้เพื่อลงชื่อเข้าใช้แอปการใช้ผลิตภาพที่ใช้ในองค์กรที่เรียกว่า Smartworkspace
เป็นครั้งแรก ระบบจะสร้างบัญชีและกำหนดบทบาทที่เหมาะสมให้กับเธอภายในพื้นที่ทำงานของบริษัทโดยอัตโนมัติ ด้วยวิธีนี้ทั้ง Sarah และทีม HR ที่ SuperFantasy ไม่จำเป็นต้องทำตามขั้นตอนหลายขั้นตอนสำหรับการสร้างบัญชีและการกำหนดบทบาท
การควบรวมกิจการ การซื้อกิจการ และพนักงานชั่วคราว
คุณมีลูกค้าที่ประสบปัญหาการรวมเข้าด้วยกันหรือการซื้อกิจการอื่น ๆ การจัดสรร JIT สามารถทำให้กระบวนการให้สิทธิ์เข้าถึงระบบของบริษัทผู้ซื้อสำหรับผู้ใช้ใหม่หลาย ๆ คนง่ายขึ้น ลองดูตัวอย่างอื่น,
Peter ทำงานให้กับ MagicTech
ซึ่งเพิ่งถูกซื้อโดย SuperFantasy
MagicTech เป็นองค์กรขนาดเล็กที่ไม่มี SSO ระดับองค์กรแต่ก็ยังใช้ Smartworkspace
ด้วย ซึ่ง Peter มีบัญชีธุรกิจอยู่แล้ว
ทีม HR สามารถเพิ่ม Peter ใน Okta
เมื่อ Peter ลงชื่อเข้าใช้ Smartworkspace เป็นครั้งแรกผ่าน Okta ระบบจะเชื่อมโยงบัญชีธุรกิจที่มีอยู่ของเขาโดยอัตโนมัติและให้สิทธิ์เข้าถึงที่เหมาะสมแก่ SuperFantasy
สถานการณ์ข้างต้นเหมาะสำหรับการใช้งานฟีเจอร์ JIT
มันเฉพาะกับ SAML และ Enterprise SSO หรือไม่?
การจัดสรร Just-in-Time (JIT) มักจะเชื่อมโยงกับการรับรองความถูกต้องของผู้ลงชื่อเข้าใช้เดียว (SSO) ใน SAML แต่ไม่ได้จำกัดเฉพาะ SAML JIT สามารถใช้ร่วมกับโปรโตคอลการรับรองอื่น ๆ เช่น OAuth 2.0 และ OpenID Connect และไม่จำเป็นต้องมีการตั้งค่า SSO ระดับองค์กรเสมอไป
ตัวอย่างเช่น JIT ที่ใช้ฐานข้อมูลอีเมลสามารถทำให้การเข้าร่วมทีม ง่ายขึ้นโดยการเพิ่มผู้ใช้อย่างอัตโนมัติไปยังพื้นที่ทำงานตามโดเมนอีเมลของพวกเขา ซึ่งเป็นประโยชน์สำหรับองค์กรที่ไม่มีงบประมาณและทรัพยากรที่จะซื้อและจัดการ SSO ระดับองค์กร
ความคิดพื้นฐานสำหรับ JIT คือการสร้างหรืออัปเดตบัญชีผู้ใช้เมื่อผู้ใช้พยายามเข้าถึงบริการเป็นครั้งแรก โดยไม่คำนึงถึงโปรโตคอลเฉพาะที่ใช้
มันใช้กับผู้ใช้ใหม่หรือผู้ใช้ที่มีอยู่แล้วของแอปหรือไม่?
นี่เป็นคำถามที่ยาก การจัดสรร Just-in-Time (JIT) มักจะเกี่ยวข้องกับความพยายามครั้งแรกในการเข้าถึงแอป อย่างไรก็ตาม ผลิตภัณฑ์ต่าง ๆ มองว่าฟังก์ชันนี้แตกต่างกันออกไป บางรายใช้การจัดสรร JIT เพียงเพื่อการสร้างตัวตนและบั ญชี ในขณะที่บางรายยังรวมถึงการอัปเดตบัญชี Just-in-Time เช่น การจัดสรรใหม่และการซิงโครไนซ์แอตทริบิวต์
นอกจากนี้ การสร้างผู้ใช้อัตโนมัติ SAML JIT Provisioning ยังช่วยในการให้และเพิกถอนการเป็นสมาชิกกลุ่มเป็นส่วนหนึ่งของการจัดสรร มันยังสามารถอัปเดตผู้ใช้ที่จัดสรรเพื่อให้แอตทริบิวต์ของพวกเขาในบริการผู้ให้บริการ (SP) ออนไลน์ซิงโครไนซ์กับแอตทริบิวต์ของร้านผู้ใช้ผู้ให้บริการตัวตน (IDP)
ตัวอย่างเช่น ใน Oracle Cloud สามารถกำหนดค่า Just-in-Time provisioning ได้หลายวิธี
- การสร้าง Just-in-Time
- การอัปเดต Just-in-Time
การจัดการ Oracle Identity Cloud Service: การทำความเข้าใจ SAML Just-In-Time Provisioning.
เมื่อผู้ใช้ลงชื่อเข้าใช้: | กระบวนการ |
---|---|
มีอยู่แล้วและเปิดใช้งาน JIT provisioning. | กระบวนการล้มเหลวของ SSO ปกติ |
ไม่มีอยู่และเปิดใช้งาน JIT creation. | สร้างผู้ใช้และใส่ด้วยแอตทริบิวต์ SAML assertion ที่ถูกแมปใน JIT configuration |
มีอยู่แล้วและเปิดใช้งาน JIT update. | ค่าแอตทริบิวต์ของผู้ใช้จะถูกอัปเดตด้วยแอตทริบิวต์ SAML assertion ที่ถูกแมปใน JIT configuration |
หากคุณต้องการพิจารณาสถานการณ์การลงชื่อเข้าครั้งต่อไปของผู้ใช้ที่มีอยู่แล้ว ตรวจสอบให้แน่ใจว่าคุณมีระบบ provisioning ที่แข็งแรงพร้อมกับระบบ JIT ของคุณ ตัวอย่างเช่น
- การแก้ปัญหาขัดแย้ง: ระบบของคุณควรมีกลยุทธ์ในการจัดการปัญหาขัดแย้งหากมีบัญชีอยู่แล้วที่มีข้อมูลต่างจากที่ได้รับจาก IdP ระหว่างกระบวนการ JIT นี่อาจต้องการการควบคุมรายละเอียดของนโยบายในองค์กรและการกำหนดค่า IdP ของคุณ
- ร่องรอยการตรวจสอบ: เป็นสิ่งสำคัญในการบันทึกการสร้างบัญชีใหม่ทั้งหลานี้และการอัปเดตบัญชีที่มีอยู่ผ่านกระบวนการ JIT เพื่อเหตุผลด้านความปลอดภัยแ ละการปฏิบัติตามข้อกำหนด
- ประสิทธิภาพ: ในขณะที่การจัดสรร JIT เกิดขึ้นอย่างรวดเร็ว พิจารณาผลกระทบที่อาจเกิดขึ้นกับเวลาการลงชื่อเข้าใช้ โดยเฉพาะกับผู้ใช้ที่มีข้อมูลอยู่แล้วถ้าคุณกำลังอัปเดตข้อมูลของพวกเขาในแต่ละครั้งที่ลงชื่อเข้าใช้
- ความสอดคล้องของข้อมูล: ตรวจสอบว่ากระบวนการจัดสรร JIT ของคุณรักษาความสอดคล้องของข้อมูล โดยเฉพาะเมื่ออัปเดตบัญชีผู้ใช้ที่มีอยู่แล้ว
ความแตกต่างระหว่าง JIT และ SCIM คืออะไร?
นอกจากการจัดสรร Just-in-Time (JIT) แล้วคุณอาจเคยได้ยินเกี่ยวกับ SCIM (ระบบสำหรับจัดการตัวตนข้ามโดเมน) SCIM เป็นโอเพ่นสแตนดาร์ดโปรโตคอลที่ออกแบบมาเพื่อทำให้การจัดการตัวตนผู้ใช้ข้ามระบบและโดเมนต่าง ๆ เป็นเรื่องง่ายและอัตโนมัติ มันมักจะใช้ในสถานการณ์การซิงค์ไดเรกทอรี
ความแตกต่างหลักระหว่าง JIT และ SCIM คือ JIT สร้างบัญชีในระหว่างการพยายามลงชื่อเข้าใช้ของผู้ใช้ ขณะที่ SCIM สามารถจัดสรรผู้ใช้ผ่านกระบวนการอัตโนมัติแบบออฟไลน์ที่ไม่ขึ้นอยู่กับความพยายามในการลงชื่อเข้าใช้ของผู้ใช้
สิ่งนี้หมายความว่า JIT มุ่งเน้นไปที่การเข้าร่วมผู้ใช้ใหม่ ขณะที่ SCIM มุ่งเน้นไปที่การจัดการวงจรชีวิตทั้งหมดของผู้ใช้
นอกจากนี้ JIT มักจะเป็นส่วนขยายของ SAML และขาดการใช้งานที่ไ ด้มาตรฐานข้ามระบบ ในขณะที่ SCIM เป็นโปรโตคอลที่กำหนดไว้อย่างดีและได้มาตรฐาน (RFC 7644) สำหรับการจัดการตัวตน
บางองค์กรขนาดใหญ่ใช้ SCIM สำหรับการจัดสรรบัญชีโดยรวมเข้ากับระบบของตนเอง นี่อาจซับซ้อนมากและแตกต่างในแต่ละกรณี องค์กรเหล่านี้มักมีระบบ provisioning ที่รวมถึงกระบวนการอัตโนมัติและการมีส่วนร่วมของผู้ดูแลที่ทำด้วยตนเองด้วย
การจัดสรร Just-in-Time ใน Logto
การจัดสรร SSO Just-in-Time และ การจัดสรรโดเมนอีเมล Just-in-Time คือสิ่งที่เรามีอยู่ใน Logto
ใน Logto เรามีชุดคุณลักษณะนี้ที่ระดับองค์กรช่วยให้ผู้ใช้สามารถเข้าร่วมองค์กรโดยอัตโนมัติและได้รับการกำหนดบทบาทหากพวกเขาตรงตามเกณฑ์ที่กำหนด
เราดำเนินการคุณลักษณะ JIT ที่ระดับที่ขยายได้และปลอดภัยที่สุดเพื่อทำให้กระบวนการจัดสรรสำห รับนักพัฒนาในการเข้าร่วมลูกค้าของพวกเขาง่ายขึ้นและเป็นอัตโนมัติ อย่างไรก็ตาม อย่างที่เราได้พูดถึงก่อนหน้านี้ เนื่องจากระบบ provisioning อาจซับซ้อนและปรับแต่งตามความต้องการเฉพาะของลูกค้าของคุณ คุณควรใช้งานคุณสมบัติ JIT ที่สร้างขึ้นล่วงหน้าใน Logto การออกแบบระบบของคุณอย่างรอบคอบและ API การจัดการ Logto เพื่อสร้างระบบ provisioning ที่แข็งแรง
ลองดูแผนภาพนี้เพื่อดูว่ามันทำงานอย่างไรใน Logto
การจัดสรร SSO ระดับองค์กร
หากคุณมีการตั้งค่า SSO ระดับองค์กรใน Logto คุณสามารถเลือก SSO ระดับองค์กรของคุณเพื่อเปิดใช้งานการจัดสรร Just-in-Time
ผู้ใช้ใหม่หรือผู้ใช้ที่มีอยู่แล้วที่ลงชื่อเข้าใช้ผ่าน SSO ระดับองค์กร เป็นครั้งแรก จะเข้าร่วมองค์กรโดยอัตโนมัติและได้รับบทบาทองค์กรเริ่มต้น
ตารางต่อไปนี้จะบอกรายละเอียด: