Vai trò
Một vai trò là một gói quyền có tên. Người dùng không bao giờ được cấp quyền trực tiếp — họ giữ vai trò, và vai trò chứa quyền. Quản lý vai trò tại Cài đặt → Vai trò (/settings/roles).

Các vai trò mẫu có sẵn
XBuddy có sẵn các vai trò gốc là chân dung (persona), không phải một thang đặc quyền lồng nhau. Giám đốc phê duyệt nhưng hiếm khi nhập liệu; kiểm toán viên đọc mọi thứ nhưng không ghi gì.
| Vai trò | Chân dung | Truy cập điển hình |
|---|---|---|
viewer | Kiểm toán chỉ đọc | read rộng, không ghi |
employee | Nhân viên tự phục vụ | Ghi dữ liệu của mình (nghỉ phép, chấm công, timesheet, chi phí) |
manager | Vận hành đội nhóm | Manage/write tài nguyên của đội |
director | Phê duyệt chiến lược | Đọc rộng + approve, ít nhập liệu |
sales_manager, hr_manager, finance_manager, … | Trưởng miền | Toàn quyền trong miền của họ |
admin | Quản trị tenant | * — mọi quyền |
Quan hệ tập con duy nhất được đảm bảo là mọi manager và director cũng là một employee (họ có luôn quyền tự phục vụ). Ngoài ra các vai trò gốc độc lập với nhau theo thiết kế — phân tách nhiệm vụ.
Tạo vai trò tùy chỉnh
Mở Vai trò
Vào Cài đặt → Vai trò và nhấn Tạo vai trò (hoặc nhân bản một vai trò gốc làm điểm khởi đầu).
Đặt tên vai trò
Đặt tên rõ ràng, ví dụ Nhân viên Sales Vùng.
Cấp quyền
Trong ma trận quyền, tích các quyền resource:action vai trò này cần — ví dụ leads:read, leads:write, deals:read, deals:write. Xem Quyền để hiểu ý nghĩa từng động từ.

Đặt phạm vi dữ liệu theo tài nguyên
Chuyển sang tab Phạm vi dữ liệu để giới hạn vai trò thấy bản ghi nào — ví dụ deals = own, contacts = team. Xem Phạm vi dữ liệu.
Lưu
Lưu vai trò. Thay đổi áp dụng cho mọi người dùng giữ nó (bộ nhớ đệm quyền làm mới trong vài phút; thu hồi nhạy cảm áp dụng ngay).
Nhiều vai trò thì cộng dồn
Một người có thể giữ nhiều vai trò cùng lúc. Truy cập hiệu lực là hợp (union) của mọi thứ các vai trò đó cấp — cả quyền lẫn phạm vi dữ liệu (bậc phạm vi rộng nhất thắng). Nhờ vậy bạn có thể ghép truy cập rất tự nhiên: employee cho tự phục vụ cộng với Nhân viên Sales Vùng cho công việc CRM.
Ủy quyền App-Admin
Cấp một quyền có phạm vi như crm:admin hoặc hr:admin để trưởng nhóm cấu hình app của chính họ — toggle tính năng, phạm vi dữ liệu và dữ liệu chính — mà không lộ hóa đơn, người dùng hay miền khác. App-Admin chỉ gán được tập con của những gì họ đang giữ (không leo thang đặc quyền).
Mỗi app có tab “Vai trò & Phân quyền” riêng trong Cài đặt của app đó (ví dụ Cài đặt HR → Vai trò & Phân quyền), gồm ba tab con:
| Tab con | App-Admin làm được gì |
|---|---|
| Vai trò (Roles) | Xem/tạo/xóa vai trò tùy chỉnh của app đó; sửa quyền chỉ trong phạm vi app sở hữu — không đụng được quyền của app khác kể cả trên vai trò hệ thống |
| Phạm vi dữ liệu | Đặt own/team/all/none cho các resource của app |
| Người dùng | Gán/gỡ vai trò tùy chỉnh của app cho người dùng — không gán được vai trò toàn hệ thống (những vai trò đó quản lý ở Cài đặt → Người dùng cấp tenant) |
App-Admin không bao giờ tự nâng quyền vượt quá tập quyền họ đang có, kể cả khi họ giữ roles:write. Trần đặc quyền này được kiểm tra ở phía máy chủ trên mọi đường gán vai trò, không chỉ khi tạo vai trò mới.
Câu hỏi thường gặp
Tôi xóa một vai trò tùy chỉnh — người dùng đang giữ nó thì sao?
Họ mất ngay các quyền/phạm vi mà riêng vai trò đó cấp. Nếu họ còn giữ vai trò khác (vd employee), phần quyền từ vai trò đó vẫn còn nguyên.
Có giới hạn số vai trò một người dùng có thể giữ không? Không có giới hạn kỹ thuật. Thực tế nên giữ gọn (2-3 vai trò/người) để dễ suy luận truy cập hiệu lực khi có sự cố.
Vai trò hệ thống (viewer, employee, manager, director, admin…) có sửa được không?
Sửa quyền của chúng được (thêm/bớt permission), nhưng không xóa được vai trò hệ thống. Nếu cần một chân dung hoàn toàn khác, tạo vai trò tùy chỉnh mới thay vì sửa sâu vai trò gốc — dễ bảo trì hơn khi nền tảng thêm quyền mới theo mặc định cho các vai trò gốc.