Reseller Portal mở rộng: quản lý license, khách hàng, yêu cầu quota, báo cáo, 2FA, API key và email cảnh báo.
5 Thêm mới1 Cải tiến
- Thêm mớiReseller Portal: trang License đã phát hành (tìm kiếm, lọc, phân trang, xuất CSV) và trang chi tiết license với gia hạn, tạm dừng, thu hồi, cấp lại key (có thể gửi email).
- Thêm mớiTrang Khách hàng của tôi, Báo cáo phát hành (biểu đồ theo ngày/tháng) và Bản cập nhật cho sản phẩm trong quota.
- Thêm mớiYêu cầu cấp thêm quota từ đại lý, admin duyệt hoặc từ chối ngay trên trang chi tiết reseller.
- Thêm mới2FA (TOTP, mã khôi phục) và quản lý phiên đăng nhập cho portal; API key đại lý cùng endpoint phát hành license /api/v2/reseller.
- Thêm mớiEmail cảnh báo cho đại lý: quota dùng 80%/100%, quota và license sắp hết hạn.
- Cải tiếnAudit log của portal có hộp xem chi tiết từng sự kiện (đầy đủ trường, hash chống sửa đổi).
Trang cài đặt và nhật ký email, xoay key license, dữ liệu demo và hộp xác nhận trong app.
3 Thêm mới1 Cải tiến1 Sửa lỗi
- Thêm mớiTrang Cài đặt email và Lịch sử gửi email: chẩn đoán SMTP, nhật ký gửi có thống kê, tìm kiếm, lọc và xem chi tiết lỗi.
- Thêm mớiXoay key license: sinh key mới hiển thị một lần (có nút sao chép), key cũ mất hiệu lực ngay.
- Thêm mớiDữ liệu demo để kiểm thử: deploy/demo-seed.sql và deploy/demo-clean.sql.
- Cải tiếnHộp xác nhận trong app thay cho confirm() của trình duyệt: tạm dừng/thu hồi license, Trust/Block/Deactivate thiết bị, xoá bản ghi, xoá reseller, gỡ quota, xoá và lưu tài khoản portal.
- Sửa lỗiSửa lỗi Message-ID trong email gửi đi và nút xoá không phản hồi do hộp xác nhận của trình duyệt bị chặn.
Bảo mật tài khoản, email SMTP, phân quyền menu và sao lưu media.
4 Thêm mới1 Cải tiến1 Bảo mật
- Thêm mớiEmail SMTP tuỳ chọn: quên mật khẩu, email mời người dùng mới, gửi email đặt lại mật khẩu và gửi thử trong Cài đặt.
- Thêm mớiDanh sách phiên đăng nhập có thiết bị và IP, đăng xuất từng phiên, xem các lần đăng nhập thất bại.
- Thêm mớiBuộc đổi mật khẩu ở lần đăng nhập đầu và bắt buộc 2FA theo vai trò qua ADMIN_REQUIRE_2FA.
- Thêm mớiSao lưu và khôi phục thư mục media (tar.gz), bảng media nằm trong bản sao lưu mã hoá.
- Cải tiếnMenu và route được ẩn theo quyền của từng người dùng; trang Reseller có chế độ thẻ/danh sách.
- Bảo mậtEmail chống chèn header, link đặt lại mật khẩu dùng một lần, trả lời giống nhau dù email có tồn tại hay không và giới hạn tần suất.
Chỉnh khoảng cách footer phân trang.
1 Cải tiến
- Cải tiếnFooter phân trang trong thư viện media, người dùng và reseller có thêm khoảng đệm, dễ nhìn hơn.
Quản lý người dùng, phân quyền theo từng tài khoản và quản lý reseller.
4 Thêm mới1 Bảo mật
- Thêm mớiTrang Người dùng: thống kê, tìm kiếm, lọc theo vai trò/trạng thái, xem thẻ hoặc danh sách và tạo tài khoản quản trị.
- Thêm mớiTrang chỉnh sửa riêng cho từng người dùng: hồ sơ (chức danh, phòng ban, điện thoại, ghi chú), bảo mật (đặt lại mật khẩu, đăng xuất mọi phiên, gỡ 2FA), hoạt động gần đây và xoá tài khoản.
- Thêm mớiPhân quyền theo từng người dùng: cấp thêm hoặc chặn từng nhóm chức năng trên nền quyền của vai trò, có hiệu lực ngay.
- Thêm mớiTrang Reseller: danh sách, hạn mức theo sản phẩm, tài khoản portal và trạng thái, xoá reseller.
- Bảo mậtKhông thể xoá hoặc hạ quyền quản trị viên cuối cùng, không tự khoá hoặc xoá chính mình; mọi thay đổi người dùng, phân quyền và reseller được ghi audit.
Xác thực hai lớp, trang tài khoản và thư viện media.
4 Thêm mới1 Bảo mật
- Thêm mớiXác thực hai lớp (TOTP) cho tài khoản admin, kèm mã QR để quét bằng ứng dụng xác thực.
- Thêm mớiTrang tài khoản cá nhân: ảnh đại diện, hồ sơ, đổi mật khẩu (có nút tạo mật khẩu mạnh), phiên đăng nhập và hoạt động gần đây.
- Thêm mớiThư viện media chuyên nghiệp: thống kê, lọc theo loại, tìm kiếm, xem lưới/danh sách, kéo thả tải lên, hộp chi tiết và trình chỉnh ảnh (cắt, thu nhỏ, WebP).
- Thêm mớiChọn ảnh đại diện và ảnh sản phẩm trực tiếp từ thư viện media.
- Bảo mậtTải lên media kiểm tra phần mở rộng và nội dung thực tế, loại trừ SVG/HTML, chống trùng bằng SHA-256, phục vụ với CSP sandbox.
Bản vá bảo mật toàn diện và tối ưu tải tài nguyên.
6 Bảo mật1 Cải tiến1 Sửa lỗi
- Bảo mậtSửa open redirect ở đăng nhập admin; tham số next chỉ chấp nhận đường dẫn nội bộ trong /admin.
- Bảo mậtPhân quyền theo vai trò cho từng trang admin và từng bản ghi trong trình xem chi tiết.
- Bảo mậtChống dò tài khoản qua thời gian phản hồi và thêm giới hạn đăng nhập theo từng email cho admin và portal.
- Bảo mậtReseller không còn ghi đè được tên khách hàng hiện có; khóa license hiển thị một lần gắn với đúng tài khoản portal.
- Bảo mậtWebhook chặn thêm các dải IP nội bộ và dành riêng (CGNAT, benchmark, TEST-NET, reserved).
- Bảo mậtThêm HSTS, Cache-Control no-store cho /admin và /portal, Cross-Origin-Opener-Policy; kiểm tra X-Request-ID.
- Cải tiếnFile tĩnh dùng ETag và trả 304; worker dọn phiên portal hết hạn.
- Sửa lỗiTrình xem chi tiết không còn trả lỗi cơ sở dữ liệu thô cho người dùng.
Sửa khoảng cách bảng ở chế độ danh sách.
1 Sửa lỗi
- Sửa lỗiBảng ở chế độ Danh sách trên các trang quản trị có lề chuẩn, đồng nhất với trang Sản phẩm.
Chế độ xem thẻ cho mọi trang quản trị và phần hướng dẫn sử dụng.
2 Thêm mới1 Sửa lỗi
- Thêm mớiMọi trang quản trị dạng bảng có nút chuyển Danh sách / Thẻ; lựa chọn được nhớ theo từng trang.
- Thêm mớiPhần Hướng dẫn sử dụng song ngữ, thu gọn được, trên các trang quản trị.
- Sửa lỗiTrang Sản phẩm ở chế độ danh sách không còn hiện trạng thái trống bị lặp.
Cải thiện trải nghiệm tìm kiếm nhanh và bổ sung trang nhật ký thay đổi.
1 Thêm mới1 Cải tiến
- Thêm mớiTrang Changelog công khai tại /changelog, hai ngôn ngữ, có bộ lọc theo loại thay đổi.
- Cải tiếnDanh sách xổ xuống của thanh tìm kiếm trên header có icon cho từng trang, đồng bộ với menu bên trái.
Trang chủ công khai, giao diện đăng nhập mới và admin song ngữ.
3 Thêm mới1 Cải tiến1 Bảo mật
- Thêm mớiTrang chủ công khai tại / giới thiệu nền tảng, licensing, bảo mật, mẫu code cho nhà phát triển, các gói và FAQ; có chế độ sáng/tối.
- Thêm mớiChuyển đổi Việt / Anh trên trang chủ, trang đăng nhập và toàn bộ giao diện admin; lựa chọn được lưu và dùng chung.
- Thêm mớiAdmin dịch toàn bộ các phân hệ, ngăn Tuỳ chỉnh giao diện, command palette, modal, hộp thoại xác nhận và thông báo lỗi từ server.
- Cải tiếnGiao diện đăng nhập quản trị và cổng khách hàng được thiết kế lại dạng chia đôi màn hình.
- Bảo mậtContent-Security-Policy áp dụng cho /, /admin* và /portal*; không còn script hoặc style nội tuyến.
Bản nâng cấp giao diện admin và gia cố runtime.
3 Thêm mới3 Cải tiến1 Sửa lỗi1 Bảo mật
- Thêm mớiGiao diện admin nx mới với ngăn Appearance (preset, sáng/tối, màu nhấn, font, bố cục, mật độ) và font tự host (Inter, Plus Jakarta Sans, Manrope, Nunito, Roboto, Be Vietnam Pro).
- Thêm mớiTrang Customer 360, Organizations và Membership với avatar, lọc trực tiếp và modal chỉnh sửa.
- Thêm mớiCấp license thông minh gắn với Customer 360 và Organization.
- Cải tiếnDashboard chuyên nghiệp, banner đầu trang, hàng KPI, lưới dữ liệu có icon thao tác và tab con trong trang.
- Cải tiếnThẻ sản phẩm với tự sinh slug, ô chọn quan hệ thay cho ID số, thêm trường cho policy, order và release.
- Cải tiếnTự nhận diện environment theo host; thiết bị bị chặn bị từ chối trước khi ghi activation.
- Bảo mậtTrả về license_invalid chung cho sản phẩm hoặc key sai (chống dò quét); key hint dạng first6••••last6.
- Sửa lỗiSửa tên cột SQL của hàng đợi chuyển thiết bị.
Bản chuyển đổi độc lập sang Go/Docker từ MB License Management v3.0.1.
7 Thêm mới1 Bảo mật
- Thêm mớiCấp license thông minh với preset 1/3/6/12 tháng, vĩnh viễn và ngày hết hạn tuỳ chỉnh; cấp hàng loạt và gia hạn nhanh.
- Thêm mớiEngine sản phẩm, plan và entitlement có kiểu dữ liệu; policy engine dùng lại được.
- Thêm mớiDevice Trust, trạng thái rủi ro và chuyển thiết bị một lần; Activation Lease.
- Thêm mớiKho phát hành plugin riêng với SHA-256, manifest ký Ed25519 khi publish và token tải về dùng một lần.
- Thêm mớiAPI client có phạm vi quyền và kiểm soát CIDR; hàng đợi webhook có retry; hạn mức reseller, đơn hàng thương mại, mẫu thông báo.
- Thêm mớiCổng tự phục vụ cho khách hàng và reseller; backup/restore mã hoá toàn bộ; worker số liệu và bảo trì theo giờ.
- Thêm mớiCRUD đầy đủ cho license, sản phẩm, khách hàng, policy, API client, order, organization, membership, entitlement, release, webhook và thương mại.
- Bảo mậtRequest Signature v2 kèm chống replay bằng Redis; chuỗi băm audit và root có chữ ký.
Không có thay đổi nào thuộc loại này.