Bỏ qua để đến nội dung

Giới thiệu

Admin as a Service là gì, đối tượng sử dụng và luồng làm việc cốt lõi, từ data source tới màn hình cho người dùng.

3 phút đọc

Admin as a Service là nền tảng xây dựng công cụ admin nội bộ. Đội kỹ thuật kết nối cơ sở dữ liệu hoặc API sẵn có, đóng gói từng thao tác thành một action có tham số. Người dùng khác chạy action đó qua form tự sinh hoặc màn hình tuỳ biến. Phân quyền quyết định ai được chạy action nào, ở môi trường nào; mọi lần chạy đều được ghi nhật ký.

Vận hành và hỗ trợ khách hàng

Tra cứu đơn hàng, đổi trạng thái và xử lý yêu cầu hằng ngày qua form có sẵn. Không cần biết SQL hay mở công cụ quản trị cơ sở dữ liệu.

Dữ liệu và báo cáo

Đóng gói các truy vấn thường dùng thành action có tham số, đặt lịch chạy định kỳ và export CSV. Action ghi dữ liệu có thể chạy nền hoặc chạy hàng loạt.

Kỹ sư công cụ nội bộ

Viết SQL hoặc JavaScript điều phối nhiều action. Dựng màn hình React/TSX có gợi ý kiểu sinh từ chính các action của project.

Quản trị và bảo mật

Quản lý tài khoản, vai trò, quyền vào từng môi trường và IP allowlist. Tra cứu nhật ký của mọi lần chạy.

  1. Kết nối data source. Admin của project thêm một PostgreSQL, MySQL hoặc HTTP API, rồi nhập thông tin kết nối riêng cho từng môi trường (ví dụ dev và prod). Thông tin đăng nhập được mã hoá và không bao giờ gửi ngược về trình duyệt. Data source HTTP hiện chỉ lưu cấu hình và thử kết nối; action gọi HTTP API chưa có.

  2. Định nghĩa action. Editor viết một câu SQL có tham số dạng {{status}}, hoặc một JS action gọi các action khác. Action được lưu nháp, sau đó Publish qua các bước kiểm tra an toàn. Mỗi lần publish tạo một version để quay về khi cần.

  3. Chạy qua form hoặc màn hình. Người dùng mở trang Chạy action. Form được sinh tự động từ tham số và kết quả hiển thị thành bảng. Khi form không đáp ứng đủ, editor viết một view bằng React/TSX. View đã publish xuất hiện cho người dùng ở mục Màn hình.

Trang Chạy action với form tham số và bảng kết quả nhiều dòngTrang Chạy action với form tham số và bảng kết quả nhiều dòng

Có ba mức dựng giao diện. Nên chọn mức đơn giản nhất đáp ứng được nhu cầu:

  • Form tự sinh: có ngay khi action được publish, không cần cấu hình.
  • Transformer: một hàm JavaScript ngắn đổi tên cột, thêm link hoặc ảnh trước khi hiển thị kết quả.
  • View: màn hình React/TSX tự viết, dùng cho dashboard, bảng ghép nhiều nguồn hoặc luồng nhiều bước.
  • Không cần dựng trang admin riêng cho từng việc nhỏ. Một câu SQL có tham số đủ để có form chạy được.
  • Không cần cấp quyền truy cập cơ sở dữ liệu trực tiếp cho người dùng. Người dùng chỉ chạy action đã publish và không thấy SQL, data source hay thông tin kết nối.
  • Kiểm soát ai chạy gì, ở đâu. Vai trò trong project, quyền chạy trên từng action, quyền vào từng môi trường và IP allowlist được kiểm tra ở máy chủ cho mỗi lần chạy.
  • Tách dữ liệu thử và dữ liệu thật. Mỗi project có sẵn môi trường dev và prod. Khi chọn môi trường production, bộ chọn trên thanh trên cùng chuyển sang màu đỏ và action ghi dữ liệu yêu cầu xác nhận lại.
  • Truy vết đầy đủ. Mọi lần chạy, kể cả lần bị từ chối, đều có trong nhật ký. Nhật ký ghi số dòng trả về, không ghi nội dung dữ liệu.