VI. Bảo mật, hạ tầng & thiết kế#
1. Phân loại dữ liệu#
| Mức | Ví dụ | Biện pháp |
|---|---|---|
| Public | Banner, tin tức, marketing | WAF, CDN, kiểm soát chỉnh sửa |
| Internal | Cấu hình, rule hoa hồng | Giới hạn truy cập nội bộ, log thay đổi |
| Confidential | Họ tên, email, phone, hoa hồng | RBAC, audit log, DSAR 30 ngày |
| Restricted | CCCD, hợp đồng, số tài khoản | Mã hóa at-rest + in-transit, hạn chế truy cập |
2. Mã hóa & Bảo mật#
- Truyền tải: TLS 1.2+
- Lưu trữ: AES-256 cho cột PII nhạy cảm
- Token/Secret: JWT với expiry, không lưu OAuth access_token
- Mật khẩu: Hash (bcrypt/argon2)
- File: MinIO private bucket, presigned URL TTL 30 giây
3. Phân quyền#
- RBAC: Root / Admin / Campaign Owner / Collaborator
- Middleware: JWT authentication trên mọi API
- Audit: Ghi log toàn bộ thao tác quan trọng
4. Hạ tầng đã triển khai#
| Thành phần | Công nghệ |
|---|---|
| Database | MongoDB |
| Cache & Queue broker | Redis |
| File storage | MinIO (S3-compatible) |
| Queue system | Asynq + Asynqmon dashboard |
| SendGrid | |
| SMS | eSMS |
| Push notification | Firebase Cloud Messaging |
| Monitoring | Elasticsearch APM |
| Alert | Telegram bot |
| Container | Docker (Alpine) |
| PDF generation | wkhtmltopdf |
| Video processing | FFmpeg |
5. Yêu cầu thiết kế (UI/UX)#
- Tuân thủ branding Techcombank (bảng màu, font, logo)
- Responsive: ≥375px (mobile) + 1024/1440px (desktop)
- WCAG 2.1 AA (≥4.5:1 contrast)
- Dashboard phân tích hỗ trợ đa ngôn ngữ (vi/en)