# QUẢN LÝ NGƯỜI DÙNG, PHÂN QUYỀN & NHẬT KÝ HỆ THỐNG

[← Integration](./06-integration-deployment.md) | [Next: System Admin →](./08-system-admin-security.md)

---

Phân hệ này đảm bảo hệ thống AM & O&M đáp ứng yêu cầu:
- **Quản trị Enterprise**
- **Truy vết trách nhiệm cá nhân (Accountability)**
- **Audit ISO / Ngân hàng / Bảo hiểm**
- **An toàn dữ liệu & pháp lý**

---

## 9.1. Quản lý Người dùng (User Management)

### 9.1.1. Hồ sơ Người dùng (User Profile)

Mỗi người dùng có một Profile riêng biệt, bao gồm:
- **Thông tin cơ bản**:
    - Họ tên, Email (định danh đăng nhập), Số điện thoại.
    - Đơn vị / Phòng ban, Chức danh.
- **Trạng thái**: Active / Suspended / Disabled.
- **Phân quyền**: Role chính, Quyền bổ sung (override), Phạm vi truy cập (Scope: Công ty/SPV/Dự án).
- **Lịch sử đào tạo & chứng chỉ**: HSE Training, ISO Training, Chứng chỉ chuyên môn.

### 9.1.2. Vòng đời Người dùng (User Lifecycle)

- Tạo mới (Onboarding) → Kích hoạt → Thay đổi vai trò → Thu hồi quyền (Offboarding) → Lưu trữ (Archive).

---

## 9.2. Phân quyền & Kiểm soát Truy cập (RBAC – Role Based Access Control)

### 9.2.1. Mô hình Phân quyền

Áp dụng **RBAC + Scope-based Access**:
- **Role**: Người dùng là ai (vị trí).
- **Scope**: Được phép làm ở đâu (Site/Project).
- *Ví dụ*: Xem dữ liệu Site A nhưng không xem Site B; Được đóng Ticket nhưng không sửa KPI.

### 9.2.2. Danh sách Role chuẩn

- **System Administrator**: Toàn quyền hệ thống.
- **Asset Owner**: Truy cập tài chính, KPI, hợp đồng.
- **Asset Manager**: Quản lý tài sản & hiệu suất.
- **O&M Manager**: Điều phối PM / CM / Cleaning.
- **Site Supervisor**: Quản lý site cụ thể.
- **Technician**: Thực hiện công việc hiện trường.
- **HSE Officer**: Giám sát an toàn & tuân thủ.
- **Auditor / Inspector**: Chỉ đọc, phục vụ audit.
- **External Partner**: Quyền giới hạn theo hợp đồng.

### 9.2.3. Ma trận Quyền (Permission Matrix)

- **Hành động**: View, Create, Edit, Approve, Delete (hạn chế), Export.
- **Đối tượng**: Asset, Ticket, KPI, Report, Contract, Financial Data.

Chi tiết: [Authentication & Authorization](../03-backend/03-authentication-authorization.md)

---

## 9.3. Nhật ký Hệ thống (System Logging & Audit Trail)

### 9.3.1. Nhật ký Toàn Hệ thống (Global System Log)

Ghi nhận mọi hành động quan trọng (Create/Update/Delete/Approve/Login/Export).
- **Cấu trúc Log**:
    - User ID, Timestamp (UTC + Local), Action.
    - Object (Asset/Ticket...), Before & After Value.
    - IP / Device.

### 9.3.2. Phân loại Nhật ký

- **Security Log**: Đăng nhập, phân quyền.
- **Operation Log**: O&M, Ticket.
- **Data Log**: Chỉnh sửa dữ liệu.
- **Compliance Log**: HSE, ISO, Audit.
- **Financial Log**: Doanh thu, chi phí.

---

## 9.4. Nhật ký Cá nhân (User Activity Log)

Mỗi User Profile có mục **"Nhật ký Hoạt động Cá nhân"**:
- Hiển thị danh sách hành động của chính người dùng đó.
- **Lọc theo**: Thời gian, Dự án, Loại hành động.
- *Quy tắc*: Người dùng chỉ xem được nhật ký của chính mình (trừ Admin/Auditor).

---

## 9.5. Audit, Truy vết & Pháp lý

- **Tính toàn vẹn**: Nhật ký **không cho phép chỉnh sửa/xóa cứng** (Immutable/Append-only).
- **Cơ chế**: Lock dữ liệu khi audit; Export log phục vụ ISO/Bank.
- **Lưu trữ**: 5–10 năm.

---

## 9.6. Bảo mật & Tuân thủ Dữ liệu

- Phân tách dữ liệu theo Tenant / Project.
- Mã hóa dữ liệu nhạy cảm.
- Phân quyền theo nguyên tắc **Least Privilege**.

---

## 9.7. Giá trị mang lại

- Truy trách nhiệm rõ ràng từng cá nhân.
- Đáp ứng audit ISO, ngân hàng, bảo hiểm.
- Giảm rủi ro nội bộ & pháp lý.
- Sẵn sàng mở rộng SaaS / Multi-client.

Chi tiết: [Database Schema](../05-data/01-database-schema.md#user--permission-management-collections)

---

**Next**: [Quản trị Hệ thống & Bảo mật](./08-system-admin-security.md)
