Chương 3: Kiến trúc Hệ thống & Cổng giao tiếp API

Chương này trình bày cái nhìn tổng quát về mô hình triển khai của hệ thống Signing Service Tân Cảng, sự tương tác giữa các vi dịch vụ, cũng như chi tiết đặc tả các cổng giao tiếp (API Interfaces) để các bên thứ 3 hoặc các nền tảng e-Office tích hợp.

3.1. Sơ đồ Kiến trúc Tổng thể (System Architecture)

Giải pháp được xây dựng theo mô hình Client-Server phân tán (Distributed) kết hợp bộ đệm (Cache) và kiến trúc Agent cục bộ dành cho chữ ký cứng.

mermaid-diagram.png

Thành phần chính:

  1. Signing Web Service (Server): Điểm vào chính của các yêu cầu ký tập trung. Bao gồm bộ Converter (Aspose) và Signing Core (DSS/PDFBox) xử lý dữ liệu chuẩn PAdES.
  2. Local Desktop Agent (Client): Ứng dụng trung gian giúp Web Browser truy xuất trực tiếp chứng thư số từ USB vật lý (không bị trình duyệt chặn giao thức bảo mật) dựa vào endpoint REST API cục bộ.
  3. Hạ tầng hỗ trợ (Redis/MSSQL): Redis giúp cache EJBCAService tránh tải nặng cho CA nội bộ với mỗi lượt request. SQL Server (MSSQL) lưu log và phân quyền truy cập.

3.2. Danh sách Web API Chính (Server-Side)

Đây là các endpoint chủ lực trên máy chủ (nằm trong SigningController), sử dụng JSON làm phương tiện trao đổi (application/json hoặc multipart/form-data). Hệ thống yêu cầu Header Token-Signing (phiên ký hợp lệ) cho hầu hết các API nghiệp vụ.

 

1. Nhóm API Xác thực OTP & Cấp quyền

2. Nhóm API Ký số & Xử lý Tài liệu

3. Nhóm API Quản trị & Audit Log

3.3. Danh sách Desktop API (Cục bộ localhost:6868)

Để tiện cho Web frontend gửi lệnh ký vào máy trạm, ứng dụng Desktop mở sẵn cổng RESTful trực tiếp trên máy người dùng (qua DesktopSigningController). Các endpoint này giao tiếp trực tiếp với USB Token.