ข้ามไปยังเนื้อหาหลัก

Data Permissions

เรามีสองวิธีการสำหรับสิทธิ์ข้อมูล (การกรอง): การใช้งาน API การมอบหมายโดยอัตโนมัติ หรือการใช้งาน BatchEnforce() API

1. การค้นหาบทบาทหรือสิทธิ์โดยอัตโนมัติ

เมื่อผู้ใช้ได้รับบทบาทหรือสิทธิ์ผ่านทางลำดับชั้น RBAC แทนที่จะได้รับการมอบหมายโดยตรงในกฎของนโยบาย, เราเรียกการมอบหมายประเภทนี้ว่า "โดยอัตโนมัติ" เพื่อค้นหาความสัมพันธ์โดยอัตโนมัติเช่นนี้, คุณต้องใช้ API สองตัวต่อไปนี้: GetImplicitRolesForUser() และ GetImplicitPermissionsForUser(), แทนที่จะใช้ GetRolesForUser() และ GetPermissionsForUser() สำหรับรายละเอียดเพิ่มเติม, โปรดดูที่ this GitHub issue

2. ใช้ BatchEnforce()

BatchEnforce() จะบังคับใช้แต่ละคำขอและคืนค่าผลลัพธ์ในอาร์เรย์ของค่าบูลีน

ตัวอย่างเช่น:

boolArray, err := e.BatchEnforce(requests)