Skip to content

Quyền hạn Phase A Built

Quyền hạn quản trị ai được làm gì, và trên dữ liệu của merchant nào. Nó định nghĩa vai trò, cấp quyền cho các vai trò đó, giới hạn truy cập theo tổ chức/merchant, và tự động lọc mọi truy vấn list và detail về phạm vi của người dùng yêu cầu. Mọi module khác đều dựa vào nó để phân quyền.

1. Định danh

Thuộc tínhGiá trị
Mã moduleCORE-02
TierCore
Trạng tháiBuilt
PhaseP1 (vai trò cố định + lọc), P2 (vai trò tùy chỉnh + cấp quyền chi tiết)
Mức ưu tiênHIGH
Người dùng chínhSuper Admin · Admin · Operator · Owner · Cashier · Employee

2. Mục đích & Phạm vi

Bao gồmLoại trừ
Tám vai trò hệ thống cố định + phân cấp vai tròQuyền wildcard (vd sales.*)
Tạo vai trò tùy chỉnh với ưu tiên và phạm viPhân loại quyền / nhóm giao diện
Catalog quyền (tạo, cập nhật, xóa)Quyền theo thời gian hoặc ca làm
Cấp / thu hồi quyền cho vai tròNhật ký kiểm toán quyền
Cấp / thu hồi vai trò cho người dùngMẫu vai trò / gói cấu hình sẵn
Truy vấn quyền hiệu lực (trực tiếp + kế thừa)Chuyển vai trò hoạt động theo merchant
Phân phạm vi theo merchant & theo tổ chức
Lọc dữ liệu theo vai trò tự động
Bảo vệ chống nâng quyền

3. Năng lực

Năng lựcNgười dùng có thể làm gìTrạng thái
Vai trò hệ thống cố địnhTám vai trò bất biến seed khi khởi động, mỗi vai trò có ưu tiên dạng sốBuilt
Lọc dữ liệu theo vai tròMọi truy vấn list/count/detail tự được lọc về phạm vi của người dùngBuilt
Bỏ qua với vai trò hệ thốngSuper Admin, Admin, Operator thấy mọi dữ liệu, bỏ qua lọc phạm viBuilt
Phân phạm vi theo merchantCấp quyền áp dụng trong merchant chọn bởi header active-merchantBuilt
Mở rộng cho HQ-ownerMột Owner tại merchant trụ sở vươn tới mọi merchant anh em của tổ chức đóBuilt
Vai trò tùy chỉnhTạo vai trò với tên i18n, ưu tiên và phạm vi org/merchant tùy chọnBuilt
Catalog quyềnTạo, cập nhật và xóa định nghĩa quyềnBuilt
Cấp / thu hồi cho vai tròThêm hoặc gỡ quyền trên một vai trò (idempotent)Built
Cấp / thu hồi vai trò cho người dùngGán hoặc gỡ vai trò khỏi người dùngBuilt
Quyền hiệu lựcXem quyền tổng hợp trực tiếp + kế thừa qua vai trò của một người dùngBuilt
Bảo vệ chống nâng quyềnChặn quản lý bất kỳ vai trò ở mức hoặc cao hơn ưu tiên của chính người thao tácBuilt

4. Phụ thuộc Module

Phụ thuộc vàoLý do
Quản lý Người dùngNgười dùng là chủ thể nhận vai trò và quyền
CommerceTổ chức và merchant là phạm vi mà vai trò gắn vào
Mọi module tính năngDữ liệu của mọi module được lọc và phân quyền qua Quyền hạn

5. Backend Packages

Chi tiết triển khai nằm trong tài liệu developer — phần này chỉ ánh xạ module tới các service vận hành nó.

PackageVai tròTài liệu developer
@nx/identityVai trò, quyền, cấp quyền policy-definition, token đăng nhậpidentity
@nx/coreMô hình Casbin + adapter policy theo merchant + đấu nối enforcerCasbin Authorization

6. Luồng Người dùng Chính

7. Vai trò & Quyền hạn

Snapshot trực tiếp từ develop. Để xem phân tích chi tiết theo từng quyền, xem Ma trận Quyền.

Vai tròĐịnh danhƯu tiênCách thực thiPhạm vi
Super Admin999_super-admin999Bỏ qua, luôn cho phépMọi thứ
Admin900_admin900Bỏ qua, luôn cho phépMọi thứ
Operator600_operator600Bỏ qua, luôn cho phépMọi thứ
Owner500_organizer-owner500Domain theo merchantTổ chức của mình + merchant của nó
Cashier110_cashier110Domain theo merchantMerchant được gán (giống Employee)
Employee100_employee100Domain theo merchantMerchant được gán
Customer010_customer10Không (hướng khách hàng)Không có quyền backend
Guest001_guest1Toàn cục (*)Chỉ onboarding (trước-merchant)

Owner vs Employee: cả hai nhận cấp full-CRUD khoan dung trên hầu hết module và chỉ khác ở tồn kho (Employee chỉ đọc master data) và ledger (chỉ Owner). Cashier giống Employee y hệt.

8. Trạng thái & Lộ trình

PhaseNăng lực
P1Tám vai trò cố định · phân cấp ưu tiên · bỏ qua với vai trò hệ thống · lọc dữ liệu tự động · ngữ cảnh vai trò trong token đăng nhập
P2Vai trò tùy chỉnh · catalog quyền · cấp/thu hồi cho vai trò & người dùng · truy vấn quyền hiệu lực · bảo vệ chống nâng quyền · phân phạm vi theo merchant
P3 (dự kiến)Quyền wildcard · phân loại quyền · mẫu vai trò · quyền theo thời gian · nhật ký kiểm toán quyền

9. Trang Liên quan

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.