Kiểm Tra Bảo Mật
Hãy nhờ AI xem xét trạng thái bảo mật của ứng dụng, tuân theo các phương pháp tốt nhất dưới đây, và lưu trữ các thông tin bí mật trong trang Settings.
Bảo mật trong Proyecta được xử lý bởi sự kết hợp giữa các mặc định của nền tảng, các đánh giá do AI thực hiện, và một số thói quen bạn nên xây dựng. Dưới đây là cách tiếp cận vấn đề này.
Chạy kiểm tra bảo mật
Phần tiêu đề “Chạy kiểm tra bảo mật”Mở Command Palette (Cmd+K / Ctrl+K) và chọn Run Security Audit. Thao tác này sẽ gửi một prompt kiểm tra bảo mật toàn diện đến AI, AI sẽ đọc toàn bộ codebase của bạn và đưa ra các lỗ hổng với kết quả được ưu tiên theo mức độ nghiêm trọng cùng các hướng khắc phục cụ thể.
Quá trình kiểm tra bao gồm:
- Các API key, token hoặc mật khẩu được hardcode trong mã nguồn
- Các biến môi trường có tiền tố
VITE_làm lộ secrets ra phía client - Thiếu validation đầu vào phía server trên các API endpoint
- Các trang hoặc API endpoint thiếu xác thực
- Nội dung người dùng chưa được escape (nguy cơ XSS)
- Lỗ hổng trong các dependency
- Nội dung hỗn hợp hoặc URL
http://được hardcode - Thiếu validation khi upload file
Bạn cũng có thể chạy kiểm tra bảo mật thủ công từ chat, hoặc thu hẹp phạm vi kiểm tra vào một khu vực cụ thể:
"Review my checkout flow for security issues""Check the admin pages — who can access what?""Look at every endpoint that writes to the database and tell me if any of them are missing authorization"
Các phương pháp bảo mật tốt nhất
Phần tiêu đề “Các phương pháp bảo mật tốt nhất”Giữ secrets an toàn
- Lưu trữ mọi API key, thông tin xác thực cơ sở dữ liệu và token của bên thứ ba trong phần Environment Variables của trang Settings
- Không bao giờ dán secrets vào tin nhắn chat hoặc commit chúng vào mã nguồn
- Nếu một secret bị lộ, hãy thu hồi ngay với nhà cung cấp bên thứ ba và tạo một secret mới
Hạn chế quyền truy cập
- Triển khai phân quyền dựa trên vai trò trong ứng dụng của bạn (
"Add admin and member roles. Only admins can access /admin pages.") - Giới hạn các trang và endpoint nhạy cảm chỉ dành cho người dùng đã xác thực
- Luôn validate đầu vào của người dùng ở phía server, không chỉ ở phía client
Sử dụng HTTPS ở mọi nơi
- Tất cả các ứng dụng Proyecta đã publish đều được phục vụ qua HTTPS tự động
- Chứng chỉ SSL được cấp phát và gia hạn cho bạn
- Đối với các domain tùy chỉnh, điều tương tự cũng áp dụng khi DNS được trỏ đúng cách
Cập nhật dependency thường xuyên
- Định kỳ hỏi AI:
"Check my dependencies for known security vulnerabilities and upgrade the vulnerable ones." - Xem xét kỹ những gì AI thay đổi — các lần nâng cấp dependency đôi khi bao gồm các breaking change
Kiểm tra sau các thay đổi lớn
- Chạy lại kiểm tra sau khi thêm xác thực, thanh toán, upload file, hoặc bất cứ điều gì liên quan đến dữ liệu người dùng
- Trước khi publish lên production lần đầu tiên, hãy thực hiện một lượt kiểm tra tổng thể
Những gì Proyecta xử lý cho bạn
Phần tiêu đề “Những gì Proyecta xử lý cho bạn”- HTTPS và chứng chỉ cho subdomain
*.proyecta.livecủa bạn - Nơi lưu trữ dữ liệu ứng dụng — nội dung, bản ghi và danh mục của ứng dụng được lưu trữ trong lớp dữ liệu của nền tảng Proyecta (dựa trên Postgres), được phân tách theo tổ chức của bạn và được mã hóa khi lưu trữ. Ứng dụng đã publish của bạn truy cập nó bằng một publishable key (
pk_pub_*) an toàn để đưa vào trang: server giới hạn các yêu cầu ẩn danh chỉ được đọc nội dung đã publish, và các hành động quản trị yêu cầu thêm một phiên đăng nhập với vai trò phù hợp. Mọi yêu cầu đều được ủy quyền theo tổ chức của bạn — một ứng dụng không bao giờ có thể đọc dữ liệu của ứng dụng khác. - Environment variables — secrets được lưu trữ trong một kho secrets riêng biệt, được đồng bộ với backend của ứng dụng khi áp dụng, và không bao giờ được commit vào codebase. Lưu ý: secrets hiển thị với các thành viên workspace có quyền truy cập project.
- Môi trường chạy độc lập — mỗi project chạy trong container riêng của nó, do đó các sự cố trong môi trường dev không ảnh hưởng đến người dùng khác
- Chạy kiểm tra trước lần publish đầu tiên — một lượt quét tổng thể sẽ phát hiện các vấn đề trước khi chúng đi vào môi trường thực tế.
- Chạy lại sau các thay đổi lớn — thêm xác thực, thanh toán hoặc upload file sẽ tạo ra bề mặt tấn công mới.
- Thu hẹp phạm vi — kiểm tra trên các khu vực cụ thể nhanh hơn và kỹ lưỡng hơn so với quét toàn bộ ứng dụng.