เอกสารนี้แปลโดย AI หากมีข้อมูลที่ไม่ถูกต้อง โปรดดูเวอร์ชันภาษาอังกฤษ
การรวมบทบาท (Role Union) เป็นรูปแบบการจัดการสิทธิ์ที่นักพัฒนาสามารถเลือกได้ตามการตั้งค่าระบบว่าจะใช้บทบาทแบบแยก (Independent roles), อนุญาตให้รวมบทบาท (Allow roles union) หรือใช้การรวมบทบาทเท่านั้น (Roles union only) เพื่อตอบสนองความต้องการด้านสิทธิ์ที่แตกต่างกันครับ/ค่ะ

โดยค่าเริ่มต้น ระบบจะใช้บทบาทแบบแยก (Independent roles) ซึ่งหมายความว่าจะไม่มีการรวมบทบาท ผู้ใช้จะต้องสลับบทบาทที่ตนเองมีทีละบทบาทครับ/ค่ะ

อนุญาตให้นักพัฒนาสามารถใช้การรวมบทบาท (Allow roles union) ได้ ซึ่งหมายความว่าผู้ใช้จะสามารถใช้สิทธิ์ของทุกบทบาทที่ตนเองมีได้พร้อมกัน ในขณะเดียวกันก็ยังอนุญาตให้ผู้ใช้สลับบทบาทของตนเองทีละบทบาทได้ด้วยครับ/ค่ะ

บังคับให้ผู้ใช้ต้องใช้การรวมบทบาทเท่านั้น (Roles union only) และไม่สามารถสลับบทบาททีละบทบาทได้ครับ/ค่ะ

การรวมบทบาทจะให้สิทธิ์สูงสุดจากทุกบทบาทที่ผู้ใช้มีครับ/ค่ะ ด้านล่างนี้คือคำอธิบายว่าจะตัดสินสิทธิ์ของบทบาทอย่างไรเมื่อมีการตั้งค่าสิทธิ์เดียวกันในบทบาทที่แตกต่างกันเกิดความขัดแย้ง
ตัวอย่าง: บทบาทที่ 1 (role1) ถูกตั้งค่าให้อนุญาตการกำหนดค่าส่วนติดต่อผู้ใช้ และบทบาทที่ 2 (role2) ถูกตั้งค่าให้อนุญาตการติดตั้ง, เปิดใช้งาน, และปิดใช้งานปลั๊กอินครับ/ค่ะ


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

สถานการณ์ที่ 1: หลายบทบาทตั้งเงื่อนไขบนฟิลด์เดียวกัน
บทบาท A, เงื่อนไข: Age < 30
| UserID | Name | Age |
|---|---|---|
| 1 | Jack | 23 |
| 2 | Lily | 29 |
บทบาท B, เงื่อนไข: Age > 25
| UserID | Name | Age |
|---|---|---|
| 2 | Lily | 29 |
| 3 | Sam | 32 |
หลังจากการรวม:
| UserID | Name | Age |
|---|---|---|
| 1 | Jack | 23 |
| 2 | Lily | 29 |
| 3 | Sam | 32 |
สถานการณ์ที่ 2: บทบาทที่แตกต่างกันตั้งเงื่อนไขบนฟิลด์ที่แตกต่างกัน
บทบาท A, เงื่อนไข: Age < 30
| UserID | Name | Age |
|---|---|---|
| 1 | Jack | 23 |
| 2 | Lily | 29 |
บทบาท B, เงื่อนไข: Name มี "Ja"
| UserID | Name | Age |
|---|---|---|
| 1 | Jack | 23 |
| 3 | Jasmin | 27 |
หลังจากการรวม:
| UserID | Name | Age |
|---|---|---|
| 1 | Jack | 23 |
| 2 | Lily | 29 |
| 3 | Jasmin | 27 |
บทบาท A, คอลัมน์ที่มองเห็นได้: Name, Age
| UserID | Name | Age |
|---|---|---|
| 1 | Jack | 23 |
| 2 | Lily | 29 |
บทบาท B, คอลัมน์ที่มองเห็นได้: Name, Sex
| UserID | Name | Sex |
|---|---|---|
| 1 | Jack | Man |
| 2 | Lily | Woman |
หลังจากการรวม:
| UserID | Name | Age | Sex |
|---|---|---|---|
| 1 | Jack | 23 | Man |
| 2 | Lily | 29 | Woman |
บทบาท A, เงื่อนไข: Age < 30, คอลัมน์ที่มองเห็นได้: Name, Age
| UserID | Name | Age |
|---|---|---|
| 1 | Jack | 23 |
| 2 | Lily | 29 |
บทบาท B, เงื่อนไข: Name มี "Ja", คอลัมน์ที่มองเห็นได้: Name, Sex
| UserID | Name | Sex |
|---|---|---|
| 3 | Jade | Woman |
| 4 | James | Man |
หลังจากการรวม:
| UserID | Name | Age | Sex |
|---|---|---|---|
| 1 | Jack | 23 | Man |
| 2 | Lily | 29 | Woman |
| 3 | Jade | 27 | Woman |
| 4 | James | 31 | Man |
หมายเหตุ: ข้อมูลที่ถูกทำเครื่องหมายไว้บางส่วน อาจไม่สามารถมองเห็นได้ในบทบาทแต่ละบทบาท แต่จะมองเห็นได้เมื่อมีการรวมบทบาท
กฎการรวมบทบาทสำหรับขอบเขตข้อมูล: