Skip to content
Duall Master

An ninh & Triển khai

An ninh có thể chỉ ra cụ thể, không phải an ninh dạng tính từ.

Mọi kiểm soát dưới đây đều được triển khai trong nền tảng hôm nay — với cơ chế cụ thể, không phải nhãn dán danh mục. Chọn cloud, on-premise hoặc hybrid; mô hình an ninh đi theo bạn.

Được rà soát gần nhất bởi nhóm nền tảng vào

Governed operations
Duall Master access control screen demonstrating governed operator workflows

Các kiểm soát

Sáu lớp kiểm soát — mỗi lớp với cơ chế cụ thể.

Các mục dưới đây đã chạy và xác thực được trong nền tảng. Cho rà soát compliance, nhóm triển khai có thể đi qua từng đường dẫn code, migration và truy vấn lưu vết.

Định danh + Xác thực

Người vận hành chứng minh danh tính ra sao

JWT với refresh token xoay vòng

Access token ngắn hạn, refresh token dài hạn. Refresh rotation phát hiện replay — nếu token bị đánh cắp được dùng lại sau khi xoay, cả family bị invalidate và phiên bị kết thúc.

Đăng nhập hai bước theo tenant

Đăng nhập là mã công ty trước, sau đó là chứng thực. Email + mật khẩu rò rỉ từ một tenant không thể đoán sang tenant khác nếu không biết mã công ty.

Grace 7 ngày offline

Refresh token vẫn được chấp nhận 7 ngày sau khi hết hạn để terminal chạy disconnected re-sync sạch khi mạng trở lại, không mất quyết định truy cập offline.

Chính sách mật khẩu áp dụng một lần

Độ dài tối thiểu được enforce qua một constant duy nhất trong auth service — mọi entry point set mật khẩu (login, reset, admin create) đều dùng chung quy tắc.

PIN re-auth cho hành động RỦI RO CAO

Công cụ rủi ro cao của Trợ lý AI (thu hồi chứng thực, vô hiệu user) hiển thị modal PIN re-auth trước khi confirm thực hiện — phiên đăng nhập của người vận hành thôi là chưa đủ.

TOTP 2FA — schema sẵn sàng, enforce đang triển khai

Model user mang field TOTP secret / backup-code và UI vận hành đã có toggle. Enforce end-to-end (đăng ký, challenge, backup code) đang triển khai từng tenant sau khi pilot xác thực.

Phân quyền + Đa tenant

Bán kính ảnh hưởng được giữ nhỏ ra sao

Tenant scoping tường minh

Mọi truy vấn chạm dữ liệu tenant đều mang parameterized WHERE tenant_id = $N. Chúng tôi đã loại bỏ wrapper rewrite SQL trước đây vì heuristic chuỗi che giấu lỗi isolation; tường minh ăn đứt phép thuật.

RBAC + plugin gating

Phân quyền kiểm theo từng request. Mô-đun plugin-gated (Visitor, Parking, VMS, Attendance) tắt mặc định — tenant phải được entitle trước khi route đăng ký.

Xác thực tài nguyên ở service

Tra cứu cross-tenant đi qua ValidateResourceAccess để ID giả mạo trong URL không thể vượt qua ranh giới tenant kể cả khi một query path quên filter.

Trợ lý AI chuyển tiếp JWT

Dịch vụ AI không bao giờ giữ thông tin ghi. Mọi action tool call được thực hiện thay mặt người vận hành đang đăng nhập, RBAC enforce bởi service downstream — không phải trợ lý.

Lưu vết + Pháp y

Cái gì được ghi và giữ bao lâu

Lưu vết bất biến

Hypertable TimescaleDB. User ứng dụng chỉ có INSERT và SELECT — không UPDATE, không DELETE. Không thể che dấu vết bằng cách sửa lịch sử.

Giữ 2 năm, nén sau 30 ngày

Time-partition với chính sách nén. Pháp y đuôi dài vẫn truy vấn được mà không phải trả chi phí hot-storage cho chunk cũ.

Writer batch tách rời

Service publish entry lưu vết vào NATS JetStream; audit-svc độc lập consume và batch-insert. Một burst hoạt động không thể tạm dừng request handling chờ ghi lưu vết.

Mọi CRUD + sự kiện auth

Đăng nhập, refresh, đổi mật khẩu, mọi CREATE/UPDATE/DELETE trên các service. API truy vấn ở /api/v1/audit/ cho system admin và /api/v1/audit/tenant/ cho người vận hành tenant.

Lưu trú dữ liệu + Ranh giới AI

Dữ liệu đi đâu khi có AI

Từ chối khởi động LLM cloud trên production

ai-asst-svc từ chối boot khi APP_ENV=production và LLM profile đang active là DeploymentCloud. Tenant cấu hình sai không thể âm thầm gửi dữ liệu vận hành tới cloud bên thứ ba.

Ollama tự host cho tenant ràng buộc lưu trú

Cho hiện trường thuộc chính sách lưu trú dữ liệu, LLM provider có thể chuyển sang Ollama chạy trong perimeter triển khai — không payload nào rời ra.

Circuit breaker cho LLM

Lỗi provider không lan — trợ lý xuống cấp mượt mà và hiển thị "LLM không khả dụng" thay vì làm treo quy trình vận hành.

Mạng + Truyền tải

Traffic vào nền tảng ra sao

CORS allowlist enforce tại boot

CORS_ALLOWED_ORIGINS bắt buộc trên production; middleware từ chối khởi động nếu giá trị là "*" với AllowCredentials true. Không "fix sau" wildcard nào lọt vào prod.

Client IP hiểu trusted-proxy

TRUSTED_PROXIES là CIDR allowlist. X-Forwarded-For chỉ được tôn trọng khi immediate peer nằm trong danh sách — thay thế middleware cũ tin tưởng header IP do client kiểm soát.

RTSP credential mã hóa AES

RTSP credential của camera được mã hóa at-rest với VMS_CREDENTIAL_KEY 32 byte trước khi persist, giải mã on-demand khi setup stream.

Kiosk token cho wall-display

Wall-display công khai dùng kiosk token scope hạn chế, chỉ-đọc — có thể render dashboard được gán nhưng không thể thay đổi state, và token có thể thu hồi riêng lẻ.

An toàn vận hành

Nâng cấp an toàn trên production ra sao

Chính sách constraint NOT VALID

Mọi ADD CONSTRAINT trên bảng đã có đều được viết NOT VALID — enforce trên row mới, validate out-of-band sau. Học từ sự cố 2026-05-16 khi validate ngay trên row có sẵn chặn mọi service phụ thuộc migrate.

Runbook khôi phục có tài liệu

Sự cố production trở thành runbook viết sẵn (docs/runbooks/*) để người trực ca tiếp theo không phải tái phát minh khôi phục từ khảo cổ log.

Migration tuần tự, theo cặp

Mỗi thay đổi schema là cặp .up.sql + .down.sql có số, áp dụng theo thứ tự nghiêm ngặt. Không live ALTER, không bảng sửa tay.

Topology tin cậy

Mọi mô-đun kế thừa cùng lớp quản trị.

Tap any layer to see how it helps a buyer evaluate the platform.

Step 01

Signal

Doors, visitors, cameras, intercoms, parking, and devices generate live operational signals instead of isolated alerts.

01Signal

Doors, visitors, cameras, intercoms, parking, and devices generate live operational signals instead of isolated alerts.

02Context

Each signal becomes useful because operator, person, role, site, zone, policy, and related module records are shown together.

03Action

Teams approve, deny, review, escalate, annotate, or link evidence without leaving the command surface.

04Audit

Every decision keeps the who, what, when, why, and related evidence needed for handoff, reporting, and investigation.

Lựa chọn hosting không thay đổi mô hình tin cậy — cùng các kiểm soát áp dụng trên cloud, on-prem và hybrid.

Triển khai

Ba mô hình triển khai, cùng một mô hình an ninh.

Cloud

Triển khai quản lý

Khởi động nhanh, vận hành nền tảng được quản lý. LLM mặc định là Anthropic Claude. Phù hợp dự án mới hoàn toàn và danh mục đa cơ sở không có quy định lưu trú nghiêm.

On-premise

Kiểm soát tại chỗ

Toàn bộ stack trong phạm vi của bạn — TimescaleDB, NATS, EMQX, MediaMTX, MinIO, Ollama. Không telemetry, không gọi LLM ra ngoài. Bắt buộc cho hiện trường chính phủ / y tế / ràng buộc lưu trú.

Hybrid

Hiện đại hóa theo giai đoạn

Control plane trên cloud, workload nhạy cảm on-prem. LLM profile theo tenant cho phép một danh mục pha trộn cloud và inference tự host trong cùng một UI vận hành.

Phù hợp nhất

Cho các hiện trường mà tin cậy là một phần của quyết định mua.

Nếu rà soát an ninh của bạn bắt đầu bằng "cho tôi xem truy vấn lưu vết, chính sách migration và đường dữ liệu LLM" — bạn đang ở đúng nơi.

Bệnh viện và cơ quan chính phủ
Cơ sở công nghiệp và nhà máy
Môi trường thương mại, dân cư, campus với khu nhạy cảm an ninh

Bước tiếp theo

Mang rà soát an ninh đến đội triển khai

Chúng tôi sẽ đi qua từng đường dẫn code, migration, truy vấn lưu vết và ranh giới dữ liệu LLM — không chỉ một checklist tính năng.