การควบคุมการเข้าถึงตามองค์กรและบทบาท: วิธีการออกแบบโมเดลการอนุญาตสำหรับผลิตภัณฑ์ของคุณ
บทความนี้ให้คำแนะนำโดยละเอียดเกี่ยวกับวิธีการออกแบบโมเดลการอนุญาตสำหรับการควบคุมการเข้าถึงตามองค์กรและบทบาท และเสนอแนวปฏิบัติที่ดีที่สุดสำหรับโมเดลการอนุมัติต่าง ๆ ในแพลตฟอร์ม Logto
องค์กรคืออะไร
นิยามขององค์กร
องค์กรคือกลุ่มของผู้ใช้ (อัตลักษณ์) และสามารถแทนทีม ลูกค้าธุรกิจ และบริษัทพาร์ทเนอร์ที่สามารถเข้าถึงแอปพลิเคชันของคุณได้
องค์กรมีประสิทธิภาพเป็นพิเศษในสภาพแวดล้อม B2B เมื่อเปรียบเทียบกับลูกค้ารายบุคคล ลูกค้าธุรกิจมักประกอบไปด้วยทีม องค์กร หรือบริษัททั้งหมด ไม่ใช่เพียงแค่บุคคลเดียว การแนะนำองค์กรในฐานะเอนทิตี้มีความสำคัญเพราะไม่เพียงแต่รวมกลุ่มผู้ใช้ แต่ยังให้บริบทสำหรับการแยกผู้เช่าในแอปแบบหลายผู้เช่า
กรณีการใช้งานขององค์กร
ด้วยองค์ประกอบพื้นฐานนี้ คุณสามารถสร้างฟีเจอร์ที่จำเป็นต่อผลิตภัณฑ์ B2B ของคุณได้:
- สร้างสถาปัตยกรรมแบบหลายผู้เช่าเพื่อแยกข้อมูลและทรัพยากรของลูกค้า
- ระดับการเข้าถึงแอปพลิเคชันถูกกำหนดโดยบทบาทที่ได้รับมอบหมายให้สมาชิกองค์กร
- การจัดสรรสมาชิกตามคำเชิญและในเวลาที่เหมาะสม
- องค์กรแต่ละแห่งสามารถมีประสบการณ์การตรวจสอบสิทธิ์แบบ SSO
การควบคุมการเข้าถึงตามบทบาทคืออะไร?
นิยามการควบคุมการเข้าถึงตามบทบาท
การควบคุมการเข้าถึงตามบทบาท (RBAC) เป็นวิธีการให้สิทธิ์แก่ผู้ใช้ตามบทบาทของพวกเขา การควบคุมการเข้าถึงตามบทบาทเป็นกลไกการควบคุมการเข้าถึงที่ไม่มีการขึ้นกับนโยบาย ซึ่งกำหนดรอบบทบาทและสิทธิพิเศษ ส่วนประกอบของ RBAC เช่น สิทธิ์ในบทบาท ความสัมพันธ์ระหว่างผู้ใช้กับบทบาท และความสัมพันธ์ระหว่างบทบาทกับบทบาท ทำให้การมอบหมายผู้ใช้เป็นเรื่องง่าย การศึกษาโดย NIST ได้แสดงให้เห็นว่า RBAC ตอบสนองความต้องการขององค์กรพาณิชย์แ ละรัฐบาลได้ดีหลายประการ
กรณีการใช้งานการควบคุมการเข้าถึงตามบทบาท
ก่อนหน้านี้ เราได้พัฒนาไกด์หลายรายการเพื่อช่วยให้คุณใช้ RBAC เพื่อตอบสนองความต้องการทางธุรกิจของคุณ ลองดูคู่มือเหล่านี้ที่ง่ายต่อการติดตามเพื่อเริ่มต้นได้อย่างรวดเร็ว
🔐 Role-Based Access Control (RBAC) | Logto Docs
การใช้โมเดลการอนุมัติต่าง ๆ ใน Logto เพื่อแนวปฏิบัติที่ดีที่สุด
การควบคุมการเข้าถึงตามบทบาทและองค์กรเป็นส่วนประกอบสำคัญของฟีเจอร์การอนุญาตใน Logto ในฐานะแพลตฟอร์มการจัดการตัวตนที่ครอบคลุม Logto นำเสนอโซลูชั่นที่ปรับให้เหมาะสำหรับสถานการณ์และชั้นต่าง ๆ เพื่อตอบสนองความต้องการของนักพัฒนาและธุรกิจสำหรับสถาปัตยกรรมผลิตภัณฑ์ที่หลากหลาย
API การควบคุมการเข้าถึงตามบทบาท
เพื่อปกป ้องทรัพยากร API ทั่วไปที่ไม่ได้ระบุไปยังองค์กรและไม่จำเป็นต้องมีข้อจำกัดบริบท ฟีเจอร์ API RBAC ถือเป็นตัวเลือกที่เหมาะสม
เพียงลงทะเบียน API และมอบสิทธิ์ให้กับแต่ละทรัพยากร จากนั้นควบคุมการเข้าถึงผ่านความสัมพันธ์ระหว่างบทบาทและผู้ใช้
ทรัพยากร API บทบาทและสิทธิ์ที่นี่ถูก "ประชาธิปไตย" ภายใต้ระบบตัวตนที่รวมเป็นหนึ่งเดียว นี่เป็นเรื่องธรรมดาในผลผลิต B2C ที่มีลำดับขั้นน้อยกว่าและไม่จำเป็นต้องมีการแยกข้อมูลในระดับลึกมาก
การควบคุมการเข้าถึงตามบทบาทขององค์กร
ในสภาพแวดล้อม B2B และหลายผู้เช่า การแยกผู้เช่าจำเป็นต ้องมี เพื่อบรรลุสิ่งนี้ องค์กรถูกใช้เป็นบริบทสำหรับการแยก นั่นหมายถึง RBAC จะมีประสิทธิภาพก็ต่อเมื่อผู้ใช้สังกัดอยู่ในองค์กรใดองค์กรหนึ่งเท่านั้น
การควบคุมการเข้าถึงตามบทบาทขององค์กรมุ่งเน้นไปที่การควบคุมการเข้าถึงในระดับองค์กรแทนที่จะเป็นระดับ API สิ่งนี้ให้ความยืดหยุ่นอย่างมากสำหรับการจัดการตัวเองในระดับองค์กรในระยะยาว แต่ยังคงอยู่ภายในระบบตัวตนรวมเป็นหนึ่งเดียว
ฟีเจอร์สำคัญของการควบคุมการเข้าถึงตามบทบาทขององค์กรคือบทบาทและสิทธิ์มักจะเหมือนกันทั่วทุกองค์กรตามค่าเริ่มต้น ทำให้ Logto "แพทเทิร์นองค์กร" มีความหมายอย่างยิ่งสำหรับการปรับปรุงประสิทธิภาพการพัฒนา
สิ่งนี้สอดคล้องกับปรัชญาร่วมของแอปหลายผู้เช่า ที่ซึ่งนโยบายการควบคุมการเข้าถึงและตัวตนเป็นส่วนประกอบของโครงสร้างพื้นฐานร่วมกันสำหรับผู้เช่าทั้งหมด (ผู้เช่าของแอป) ซึ่งเป็นแนวปฏิบัติทั่วไปในผลิตภัณฑ์ SaaS
การเลือกและออกแบบโมเดลการอนุมัติที่เหมาะสม
เมื่อเลือกโมเดลการอนุมัติที่เหมาะสมควรพิจารณาคำถามเหล่านี้:
- คุณกำลังพัฒนาผลิตภัณฑ์แบบ B2C, B2B หรือแบบผสมระหว่างทั้งสองประเภทหรือไม่? อัตลักษณ์ถือเป็นอัตลักษณ์ทางธุรกิจหรือไม่?
- แอปของคุณต้องการสถาปัตยกรรมหลายผู้เช่าหรือไม่?
- แอปของคุณต้องการระดับการแยกที่แน่นอนหรือไม่ ตามที่หน่วยธุรกิจกำหนด?
- สิทธิ์และบทบาทใดบ้างที่จ ำเป็นต้องกำหนดในบริบทขององค์กร และสิทธิ์และบทบาทใดที่ไม่จำเป็น?
แอป B2C
ลองใช้ตัวอย่างแอปพลิเคชันเว็บ: BookHarber ร้านหนังสือออนไลน์ BookHarber นำเสนอฟีเจอร์ที่หลากหลายให้กับลูกค้าและพนักงาน เพื่อให้แน่ใจว่ามีประสบการณ์การช็อปปิ้งที่ราบรื่นและปลอดภัย
ฟีเจอร์หลักของ BookHarber ได้แก่:
- การเรียกดูและซื้อหนังสือ: ผู้ใช้สามารถค้นหาและซื้อหนังสือจากคอลเล็กชันที่หลากหลาย ซึ่งครอบคลุมหลากหลายประเภทรวมถึงผู้แต่งหลายคน
- การจัดการคำสั่งซื้อและการติดตามโลจิสติกส์: ลูกค้าที่ลงทะเบียนสามารถจัดการคำสั่งซื้อของตน ติดตามการจัดส่ง และรับการอัปเดตเกี่ยวกับการซื้อของพวกเขา
- ข้อเสนอพิเศษและกิจกรรรมในวันหยุด: BookHarber มีส่วนลดและโป รโมชั่นพิเศษในช่วงกิจกรรมพิเศษและวันหยุด เพื่อให้ลูกค้ามีส่วนร่วมและได้รับรางวัล
- การสนับสนุนลูกค้า: ลูกค้าสามารถเปิดตั๋วการสนับสนุนเพื่อแก้ไขข้อกังวลหรือปัญหาที่อาจพบ พนักงานของ BookHarber ให้ความช่วยเหลือทันท่วงที
- การจัดการลูกค้า: พนักงานที่มีบทบาทต่าง ๆ มีความสามารถในการจัดการหลากหลายสาขาของแพลตฟอร์ม เช่น บัญชีลูกค้า การประมวลผลคำสั่งซื้อ และการแก้ไขปัญหา
บทบาท
ในระบบนิเวศของ BookHarber เราสามารถระบุบทบาทสำคัญของผู้ใช้หลาย ๆ บทบาทได้ เช่น:
- ผู้เยี่ยมชม: ผู้ใช้ที่ไม่ลงทะเบียนซึ่งสามารถเรียกดูเว็บไซต์ ค้นหาหนังสือ และดูข้อเสนอพิเศษ
- ลูกค้า: ผู้ใช้ที่ลงทะเบียนซึ่งสามารถซื้อหนังสือ จัดการคำสั่ง ซื้อ ติดตามโลจิสติกส์ และเปิดตั๋วการสนับสนุนได้
- ผู้ดูแลร้าน: พนักงานที่รับผิดชอบการบริหารแพลตฟอร์มทั้งหมด มีการเข้าถึงทั้งหมด
- ผู้จัดการหนังสือ: พนักงานที่รับผิดชอบการจัดการหนังสือและหมวดหมู่
- เจ้าหน้าที่บริการลูกค้า: พนักงานที่ได้รับมอบหมายให้ตอบสนองต่อการร้องขอการสนับสนุน
- ผู้ให้บริการโลจิสติกส์จากภายนอก: พาร์ทเนอร์ภายนอกที่รับผิดชอบการจัดการและการติดตามการจัดส่งคำสั่งซื้อ
- พนักงานการตลาด: พนักงานที่รับผิดชอบในการโปรโมท BookHarber รับผิดชอบในการจัดการข้อเสนอพิเศษและกิจกรรมต่าง ๆ
ก่อนหน้านี้ เราได้พัฒนาไกด์หลายรายการเพื่อช่วยให้คุณใช้ RBAC เพื่อตอบสนองความต้องการทางธุรกิจของคุณ ลองดูคู่มือเหล่านี้ที่ง่ายต่อการติดตามเพื่อเริ่มต้นได้อย่างรวดเร็ว
การเชี่ยวชาญ RBAC ใน Logto: ตัวอย่างจากโลกจริงที่ครอบคลุม
แอป B2B
แอปหลายผู้เช่ามักพบตัวตนในโซลูชั่น B2B เช่น เครื่องมือเพิ่มผลิตภาพ ระบบการวางแผนทรัพยากรองค์กร (ERP) และผลิตภัณฑ์ซอฟต์แวร์ในรูปแบบบริการอื่น ๆ (SaaS) ในบริบทนี้ "ผู้เช่า" มักจะหมายถึงลูกค้าธุรกิจซึ่งอาจมีผู้ใช้หลายคน (เป็นพนักงานของตนเอง) นอกจากนี้ลูกค้าธุรกิจอาจมีผู้เช่าหลายรายเพื่อแสดงถึงองค์กรหรือหน่วยธุรกิจที่แตกต่างกัน
สร้างองค์กรบางองค์กร
กำหนดเท็มเพลตขององค์กรสำหรับการควบคุมการเข้าถึงในระดับองค์กร
แอปแบบผสม B2B & B2C
แอป B2B ไปไกลกว่าผลิตภัณฑ์ SaaS และมักเกี่ยวข้องกับการใช้งานแอปหลายผู้เช่า ในบริบท B2B แอปเหล่านี้ทำหน้าที่เป็นแพลตฟอร์มร่วมสำหรับทีมลูกค้าธุรกิจ และบริษัทพาร์ทเนอร์หลายรายเพื่อเข้าถึงแอปพลิเคชันของคุณ
ตัวอย่างเช่น ลองพิจารณาบริษัทบริการแชร์รถที่ให้บริการแอปทั้งแบบ B2C และ B2B แอป B2B ให้บริการลูกค้าธุรกิจหลายราย และการใช้สถาปัตยกรรมหลายผู้เช่าจะสามารถช่วยการจัดการพนักงานและทรัพยากรของตนได้ เพื่อแสดงตัวอย่าง หากบริษัทต้องการรักษาระบบตัวตนผู้ใช้แบบหนึ่งเดียว สามารถออกแบบสถาปัตยกรรมดังตัวอย่างต่อไปนี้:
มาลองใช้ Sarah เป็นตัวอย่าง Sarah มีทั้งอัตลักษณ์ส่วนบุคคลและธุรกิจ เธอใช้บริการแชร์รถในฐานะผู้โดยสารและทำงานเป็นคนขับอิสระในเวลาว่าง ในบทบาทของเธอในระดับมืออาชีพ เธอยังจัดการธุรกิจส่วนบุคคลของเธอเองและใช้เอกลักษณ์ทางธุรกิจนี้เพื่อเป็นพันธมิตรกับ ธุรกิจ 1
การตั้งค่าเอกลักษณ์ใน Logto
แผนที่อัตลักษณ์และบทบาทของผู้ใช้