Giao diện
Vai trò và phân quyền
Quản lý vai trò (role) và gán quyền hạn (permission) cho tài khoản, kiểm soát truy cập các chức năng trên hệ thống.
Quyền truy cập: Cần quyền admin, Xem danh sách vai trò, Tạo vai trò, Cập nhật vai trò, Xoá vai tròĐiều hướng: Tài khoản > Vai trò và Phân quyền hoặc /manage/account/role-permission
Tổng quan
Hệ thống phân quyền của Noova dựa trên mô hình RBAC (Role-Based Access Control). Mỗi vai trò chứa một tập hợp các quyền (permission) xác định chức năng mà người dùng được phép truy cập. Quản trị viên có thể tạo các vai trò tùy chỉnh, gán quyền cho vai trò, và gán vai trò cho tài khoản.
Ngoài vai trò, hệ thống còn hỗ trợ chính sách truy cập - gói quyền tạm thời có thể đặt thời hạn, phù hợp cho nhân viên tạm thời hoặc dự án đặc biệt. Xem chi tiết tại Chính sách truy cập.
Từ phiên bản 8.10, hệ thống thêm Phạm vi quyền tự nhiên (Permission Scope Engine): thay vì all-or-nothing, vai trò manager/instructor/recruiter chỉ thấy dữ liệu trong phạm vi tương ứng (đơn vị quản lý, khoá học được phụ trách, ứng viên được gán...). Xem § Permission Scope Engine.
Vai trò mặc định
Khi khởi tạo hệ thống lần đầu, 9 vai trò mặc định được tạo tự động với phân quyền và phạm vi tương ứng:
| Nhóm | Vai trò | Mô tả | Phạm vi mặc định |
|---|---|---|---|
| Hệ thống | Admin | Quản trị viên - toàn quyền, không thể xoá/sửa | Toàn bộ |
| Nhân sự | Giám đốc nhân sự | Quản lý toàn bộ hoạt động nhân sự | Toàn bộ tổ chức |
| Nhân sự | Quản lý nhân sự | Vận hành nhân sự hàng ngày | Toàn bộ tổ chức |
| Nhân sự | Nhân viên nhân sự | Xử lý nghiệp vụ nhân sự cơ bản | Đơn vị phụ trách |
| Quản lý | Trưởng bộ phận | Quản lý đơn vị và đơn vị con | Đơn vị và con |
| Quản lý | Trưởng nhóm | Quản lý nhóm trực tiếp | Nhóm trực tiếp |
| Nhân viên | Nhân viên | Nhân viên chính thức | Chỉ của bản thân |
| Bên ngoài | Giảng viên ngoài | Giảng viên không thuộc tổ chức | Chỉ khoá học được gán |
| Bên ngoài | Học viên ngoài | Học viên không thuộc tổ chức | Chỉ khoá học đã ghi danh |
| Bên ngoài | Khách | Truy cập nội dung công khai | Không có quyền |
Phạm vi xác định dữ liệu mà người dùng được phép xem hoặc quản lý:
| Phạm vi | Mô tả |
|---|---|
| Chỉ của bản thân | Chỉ dữ liệu liên quan đến chính mình |
| Nhóm trực tiếp | Dữ liệu của nhân viên mà mình quản lý trực tiếp |
| Đơn vị phụ trách | Dữ liệu trong đơn vị được gán |
| Toàn bộ tổ chức | Dữ liệu toàn hệ thống |
| Tuỳ chỉnh | Phạm vi do quản trị viên cấu hình riêng cho từng module |
Lưu ý: Quản trị viên có thể thay đổi phạm vi mặc định và điều chỉnh phạm vi riêng cho từng module trong vai trò.
Danh sách quyền theo module
Hệ thống chia quyền thành nhiều module. Dưới đây là các module quyền chính:
Quyền quản lý tài khoản (USER)
| Mã quyền | Tên | Mô tả |
|---|---|---|
| USER_LIST_VIEW | Xem danh sách tài khoản | Xem danh sách tất cả tài khoản |
| USER_ONE_VIEW | Xem chi tiết tài khoản | Xem thông tin chi tiết một tài khoản |
| USER_COUNT | Đếm số lượng tài khoản | Xem số lượng tài khoản |
| USER_SEARCH | Tìm kiếm tài khoản | Tìm kiếm tài khoản theo tiêu chí |
| USER_UPDATE_PROFILE | Cập nhật hồ sơ | Sửa thông tin hồ sơ tài khoản |
| USER_UPDATE_PASSWORD | Đổi mật khẩu | Đặt lại mật khẩu cho tài khoản |
| USER_UPDATE_INFOR_LOGIN | Đổi thông tin đăng nhập | Thay đổi username và email đăng nhập |
| USER_UPDATE_MY_COURSE | Quản lý khóa học | Thêm/xóa khóa học cho tài khoản |
| USER_CHECK_ROLE | Kiểm tra vai trò | Xem vai trò của tài khoản |
| USER_UPDATE_ROLE | Cập nhật vai trò | Thay đổi vai trò của tài khoản |
| USER_UPDATE_VERIFIED | Xác minh tài khoản | Xác minh hoặc bỏ xác minh email |
| USER_UPDATE_BLOCKED | Khóa tài khoản | Khóa hoặc mở khóa tài khoản |
| USER_CREATE | Tạo tài khoản | Tạo tài khoản mới |
| USER_DELETE | Xóa tài khoản | Xóa tài khoản khỏi hệ thống |
Quyền quản lý vai trò (ROLE)
| Mã quyền | Tên | Mô tả |
|---|---|---|
| ROLE_LIST_VIEW | Xem danh sách vai trò | Xem tất cả vai trò trên hệ thống |
| ROLE_ONE_VIEW | Xem chi tiết vai trò | Xem chi tiết một vai trò và các quyền |
| ROLE_CREATE | Tạo vai trò | Tạo vai trò mới |
| ROLE_UPDATE | Cập nhật vai trò | Sửa vai trò và quyền của vai trò |
| ROLE_DELETE | Xóa vai trò | Xóa vai trò khỏi hệ thống |
| ROLE_UPDATE_USER | Gán vai trò cho tài khoản | Chọn vai trò cho tài khoản cụ thể |
Các module quyền khác
Hệ thống còn nhiều module quyền bổ sung tùy theo tính năng được kích hoạt:
- ORGANIZATION: Quyền quản lý tổ chức, đơn vị, phòng ban
- TRAINING: Quyền quản lý đào tạo, chương trình, hoạt động
- COURSE: Quyền quản lý khóa học
- QUIZ: Quyền quản lý bài kiểm tra
- ENROLLMENT: Quyền quản lý ghi danh
- RECRUITMENT: Quyền quản lý tuyển dụng
- PERFORMANCE: Quyền quản lý đánh giá hiệu suất
- TIME_ATTENDANCE: Quyền quản lý chấm công
- COMPENSATION: Quyền quản lý lương thưởng
- AI: Quyền quản lý tính năng AI
- AUTOMATION: Quyền quản lý tự động hóa
- MEETING: Quyền quản lý cuộc họp
- SUCCESSION: Quyền quản lý kế nhiệm
- ENGAGEMENT: Quyền quản lý gắn kết
- COMMUNITY: Quyền quản lý cộng đồng
- CAREER_PATHING: Quyền quản lý nghề nghiệp
- PAYROLL: Quyền quản lý bảng lương
Tạo vai trò mới
Các bước
- Truy cập
Tài khoản > Vai trò. - Nhấn nút Tạo vai trò.
- Nhập tên vai trò.
- Chọn các quyền cần gán cho vai trò từ danh sách quyền.
- Nhấn Lưu để tạo vai trò.
Gán vai trò cho tài khoản
Các bước
- Truy cập trang cài đặt của tài khoản cần gán vai trò.
- Tìm phần quản lý vai trò.
- Chọn vai trò cần gán từ danh sách.
- Lưu thay đổi.
Hoặc từ trang quản lý vai trò, chọn vai trò và thêm tài khoản vào vai trò đó.
Phụ thuộc quyền
Một số quyền có phụ thuộc (dependency). Khi gán quyền, các quyền phụ thuộc sẽ tự động được yêu cầu:
- Xem chi tiết một tài khoản phụ thuộc Xem danh sách tài khoản
- Cập nhật thông tin hồ sơ phụ thuộc Xem chi tiết một tài khoản
- Xoá tài khoản phụ thuộc Xem chi tiết một tài khoản
- Tạo vai trò phụ thuộc Xem danh sách vai trò
- Cập nhật vai trò phụ thuộc Xem chi tiết một vai trò
- Xoá vai trò phụ thuộc Xem chi tiết một vai trò
Permission Scope Engine (8.10)
Từ phiên bản 8.10, hệ thống thêm tầng lọc dữ liệu theo phạm vi tự nhiên trên top của quyền RBAC. Khi user thuộc vai trò manager/instructor/recruiter, danh sách dữ liệu (employees, courses, candidates, programs...) tự động giới hạn theo phạm vi mà user phụ trách, không cần admin gán quyền cụ thể từng record.
Cách hoạt động
Mỗi module có một scope resolver riêng quyết định danh sách record mà user được phép xem:
| Resolver | Module | Phạm vi |
|---|---|---|
manager-scope-resolver | Tổ chức, Hiệu suất, IDP, Chấm công, Lương | Nhân viên thuộc đơn vị mình quản lý + sub-units |
instructor-scope-resolver | LMS (Khoá, Kỳ thi, Khảo sát, Chương trình) | Nội dung mà user được phân công (qua Phụ trách LMS) |
lms-report-scope-resolver | Báo cáo LMS | Báo cáo của nội dung trong phạm vi instructor |
performance-scope-resolver | Hiệu suất | Review/feedback của nhân viên trong scope |
recruitment-scope-resolver | Tuyển dụng | Ứng viên được gán cho recruiter |
Ví dụ thực tế
- Trưởng bộ phận Marketing mở
Tổ chức > Nhân sự→ chỉ thấy nhân viên đơn vị Marketing và các sub-unit - Giảng viên khoá "Onboarding 101" mở
Nội dung LMS > Khoá học→ chỉ thấy "Onboarding 101" và các khoá khác họ phụ trách - Recruiter Linh mở
Tuyển dụng > Ứng viên→ chỉ thấy ứng viên trong job posting cô được gán - Admin mở các module → vẫn thấy toàn bộ (admin bypass scope filter)
Phạm vi trên vai trò vs scope resolver
Hai cơ chế bổ sung cho nhau:
| Cơ chế | Mức kiểm soát | Cài đặt |
|---|---|---|
| Phạm vi vai trò mặc định (cột Phạm vi mặc định ở bảng vai trò) | Cứng, áp dụng cho mọi user của vai trò đó | Admin chọn khi tạo vai trò |
| Permission Scope Engine | Mềm, tính động theo data thực tế (manager-of, instructor-of, owner-of) | Tự động, không cần cấu hình thêm |
Audit & debug
Hệ thống có Universal Scope Service + Module Scope Registry + Data Scope Service + Audit log ghi nhận mỗi lần scope filter chạy. Admin có thể xem log tại Cài đặt > Nhật ký để debug nếu user phàn nàn "không thấy data mong đợi".
Lưu ý: Permission Scope Engine không thay thế RBAC permission - vẫn cần permission tương ứng (ví dụ
EMPLOYEE_LIST_VIEW) để mở trang. Scope chỉ lọc data sau khi đã có permission.
Lưu ý
- Vai trò
admincó toàn quyền trên hệ thống, không cần gán thêm quyền và không chịu scope filter. - Không thể xóa vai trò đang được gán cho tài khoản (cần gỡ vai trò khỏi tất cả tài khoản trước).
- Các module quyền chỉ hiển thị khi tính năng tương ứng được kích hoạt qua Cài đặt > Quản lý dịch vụ > Tính năng (xem Quản lý dịch vụ).
- Thay đổi quyền có hiệu lực ngay lập tức sau khi tài khoản đăng nhập lại.
- Permission Scope Engine tự động kích hoạt - không cần config riêng.
Xem thêm
- Quản lý tài khoản - Quản lý danh sách tài khoản
- Nhóm tài khoản - Quản lý nhóm tài khoản
- Quản lý dịch vụ - Bật/tắt module qua Feature Toggle

