User Story 6 – Quản lý Vai trò & Quyền hạn (RBAC Management)
| Mã tài liệu: | EZD-PRD-ADM-US-06 | Phiên bản: | 1.0 |
|---|---|---|---|
| Epic liên quan: | Quản lý Truy cập & Phân quyền Hệ thống | Persona: | Super Admin |
| Ngày hiệu lực: | 19/09/2025 | Người tạo: | John |
| Tài liệu Flow: | EZD-PJT-FLW, mục 3.2 | Người phê duyệt: | Stephen |
1. Mô tả
Với vai trò là một Super Admin, Tôi muốn có thể tạo, sửa, và xóa vai trò (Role) cùng với danh sách quyền hạn (Permission) tương ứng, Để tôi có thể phân tách trách nhiệm và kiểm soát ai được phép quản lý nội dung, ai chỉ được xem báo cáo.
2. Luồng Người dùng (User Flow)
2.1. Happy Path – Quản lý vai trò thành công
graph TD
A(LOGIN-01: Đăng nhập Dashboard) --> B(RBAC-01: Vào module Quản lý Vai trò);
B --> C(RBAC-02: Nhấn 'Tạo vai trò mới');
C --> D(RBAC-03: Nhập tên vai trò & chọn quyền hạn);
D --> E(RBAC-04: Lưu & kích hoạt vai trò);
E --> F(RBAC-05: Hệ thống hiển thị vai trò mới trong danh sách);
F --> G(RBAC-06: Chọn vai trò để chỉnh sửa);
G --> H(RBAC-07: Cập nhật quyền hạn & lưu lại);
H --> I(RBAC-08: Vai trò cập nhật thành công);
I --> J(RBAC-09: Chọn vai trò để xóa);
J --> K(RBAC-10: Xác nhận xóa vai trò);
K --> L(RBAC-11: Vai trò biến mất khỏi danh sách & không còn hiệu lực);
2.2. Fail Path 1 – Thiếu thông tin bắt buộc
graph TD
A(RBAC-03: Nhập tên vai trò) --> B(RBAC-ERR-01: Bỏ sót tên hoặc không chọn quyền);
B --> C(MSG-01: Hiển thị cảnh báo 'Vui lòng nhập đầy đủ thông tin');
C --> D(RETRY-01: Người dùng bổ sung và lưu lại);
Acceptance: Không cho phép lưu khi thiếu tên vai trò hoặc chưa chọn quyền hạn.
2.3. Fail Path 2 – Vai trò đang được sử dụng
graph TD
A(RBAC-09: Chọn vai trò để xóa) --> B(RBAC-ERR-02: Vai trò đã gán cho người dùng);
B --> C(MSG-02: Hiển thị thông báo 'Không thể xóa vai trò đang sử dụng');
C --> D(RETRY-02: Người dùng chọn vai trò khác hoặc gỡ gán trước khi xóa);
Acceptance: Không cho phép xóa vai trò nếu còn gán cho user.
3. Guardrails Định lượng
- Role CRUD success rate: ≥ 98%.
- RBAC update latency: ≤ 1 phút từ khi lưu đến khi áp dụng trên hệ thống.
- Invalid role save: = 0 (không có role thiếu thông tin được lưu).
- Delete consistency: 100% vai trò đã xóa không còn gán cho user nào.
4. Tiêu chí Chấp nhận Tổng thể
- Super Admin có thể tạo/sửa/xóa vai trò với danh sách quyền hạn định nghĩa sẵn.
- Hệ thống phản ánh thay đổi (create, update, delete) trong vòng ≤ 1 phút.
- Không cho phép lưu role thiếu tên hoặc không có quyền.
- Không cho phép xóa role nếu còn gán cho user.
- Có cơ chế retry nếu cập nhật thất bại.
5. Checklist ISO 9001
| STT | Tiêu chí Kiểm tra | Tiêu chí Chấp nhận | Nguồn tham chiếu | Kết quả | Evidence |
|---|---|---|---|---|---|
| 1 | Tạo role đầy đủ field | Không cho lưu khi thiếu tên hoặc quyền | EZD-PRD-ADM Epic | [ ] ✔ / [ ] ✘ | |
| 2 | Áp dụng role mới thành công | Hệ thống áp dụng ≤ 1 phút | EZD-PJT-FLW 3.2 | [ ] ✔ / [ ] ✘ | |
| 3 | Xóa role an toàn | Không cho xóa role còn gán user | EZD-PJT-FLW 3.2 | [ ] ✔ / [ ] ✘ | |
| 4 | Role CRUD success rate | ≥ 98% thành công | EZD-QMS-P01 | [ ] ✔ / [ ] ✘ | |
| 5 | Delete consistency | 100% role xóa biến mất khỏi hệ thống | EZD-PJT-FLW 3.2 | [ ] ✔ / [ ] ✘ |