Bảo mật & Quyền riêng tư
Những lớp bảo vệ đang có trong Data Explorer, cách chúng hoạt động, và các giới hạn bạn vẫn cần hiểu trước khi dùng app với dữ liệu thật.
AES-256-GCM
Saved connection passwords được mã hóa bằng AES-256-GCM trước khi lưu. Đây là lớp bảo vệ chính cho credential ở phía backend.
Connection guardrails
Mỗi connection có thể được cấu hình read-only, cấm schema changes, cấm import/export, hoặc cấm query execution hoàn toàn.
Secret enforcement
Backend từ chối khởi động nếu JWT secret quá yếu. Mật khẩu admin mặc định được thay thế bằng chuỗi ngẫu nhiên nếu không có cấu hình môi trường.
SSRF & Tunnel Guard
SSH Tunnel và các kết nối outbound được kiểm tra nghiêm ngặt, chặn đứng truy cập trái phép vào mạng nội bộ (127.0.0.1, dải IP RFC1918).
Những gì app đang bảo vệ tốt
- Credential lưu trong app database được mã hóa bằng AES-256-GCM.
- SQL Guard chặn đứng các kỹ thuật bypass nâng cao như EXEC, EXECUTE trong kết nối Read-only.
- SSRF guard chặn tuyệt đối các target nội bộ hoặc localhost (chống quét mạng nội bộ qua Tunnel), fail-closed với host rỗng và chặn IPv4-mapped IPv6.
- Quyền riêng tư Team được cô lập, không còn chia sẻ tự động dựa trên domain email công cộng.
- Thông báo lỗi Database được làm sạch (Sanitize) để tránh rò rỉ thông tin hạ tầng nhạy cảm.
- Bộ pentest đối kháng chạy thường xuyên mô phỏng identifier smuggling, CSRF header spoofing, và property-based fuzzing cho mọi guard.
- security.txt công khai kênh responsible disclosure cho researcher báo cáo lỗ hổng.
Session & đăng nhập hiện tại
Refresh token cookie
App hiện dùng refresh token trong httpOnly cookie. Cookie này được xoay vòng khi login, refresh session, và social-login exchange thành công.
In-memory access token
Access token chỉ sống trong memory phía client. Khi reload app, frontend bootstrap lại session bằng /auth/refresh thay vì đọc token cũ từ local storage.
Mô hình này an toàn hơn localStorage-persisted JWT vì refresh token không thể bị JavaScript đọc trực tiếp. Muốn chạy ổn trên production cross-origin, bạn cần FRONTEND_URL đúng và HTTPS để cookie secure hoạt động đầy đủ.
Read-only & policy theo connection
Server-side enforcement
Các thao tác bị cấm như UPDATE, DELETE, DROP, schema edits, import flow, hoặc mutation NoSQL sẽ bị chặn ở backend, không chỉ ẩn ở UI.
AI actions vẫn cần kiểm tra
Ngay cả khi AI gợi ý SQL hợp lý, bạn vẫn nên kiểm tra lại trước khi chạy, đặc biệt với index creation, schema changes, và các truy vấn ghi dữ liệu.
Best practices khuyến nghị
- Dùng JWT_SECRET mạnh ít nhất 32 bytes và ENCRYPTION_KEY đúng 32 ký tự.
- Thiết lập ADMIN_EMAIL và ADMIN_PASSWORD trong .env để tránh việc hệ thống dùng mật khẩu ngẫu nhiên tạm thời.
- Ưu tiên read-only connection cho các truy vấn phân tích để kích hoạt lớp bảo vệ SQL Guard.
- Luôn cấu hình timeout cho các database lớn để tránh chiếm dụng tài nguyên hệ thống.
Điểm còn nên làm tiếp
Sẵn sàng khám phá dữ liệu?
Tham gia cộng đồng trên GitHub để đóng góp cho IDE cơ sở dữ liệu địa phương thông minh nhất.
Mở Ứng dụng