安全审计
请 AI 审查你的应用安全状况,遵循以下最佳实践,并将密钥保存在 Settings 页面。
Proyecta 的安全性由平台默认设置、AI 驱动的审查以及一些你应当养成的习惯共同保障。以下是相关思路。
运行安全审计
Section titled “运行安全审计”打开 Command Palette(Cmd+K / Ctrl+K),选择 Run Security Audit。这将向 AI 发送一个全面的安全提示,AI 会读取你的整个代码库,并按优先级列出漏洞发现及具体修复建议。
审计检查项包括:
- 源文件中硬编码的 API 密钥、令牌或密码
- 以
VITE_为前缀、会将密钥泄露给客户端的环境变量 - API endpoint 缺少服务端输入验证
- 页面或 API endpoint 缺少身份认证
- 未转义的用户内容(XSS 风险)
- 依赖项漏洞
- 混合内容或硬编码的
http://URL - 缺少文件上传验证
你也可以在聊天中手动运行安全审计,或将范围缩小到特定区域:
"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"
安全最佳实践
Section titled “安全最佳实践”保持密钥安全
- 将所有 API 密钥、数据库凭据和第三方令牌存储在 Settings 页面的环境变量部分
- 切勿将密钥粘贴到聊天消息中或提交到代码里
- 如果密钥已泄露,请立即在第三方服务商处将其撤销,并创建新的密钥
限制访问权限
- 在应用中实现基于角色的权限控制(
"Add admin and member roles. Only admins can access /admin pages.") - 将敏感页面和 endpoint 限制为仅已认证用户可访问
- 始终在服务端验证用户输入,而不仅仅依赖客户端验证
全面使用 HTTPS
- 所有已发布的 Proyecta 应用均自动通过 HTTPS 提供服务
- SSL 证书由平台自动配置和续期
- 对于自定义域名,只要 DNS 正确指向,同样适用上述机制
保持依赖项更新
- 定期向 AI 提问:
"Check my dependencies for known security vulnerabilities and upgrade the vulnerable ones." - 仔细审查 AI 所做的变更——依赖项升级有时会包含破坏性改动
重大变更后重新审计
- 在添加身份认证、支付、文件上传或任何涉及用户数据的功能后,重新运行审计
- 在首次发布到生产环境之前,进行一次全面检查
Proyecta 为你处理的事项
Section titled “Proyecta 为你处理的事项”- 为你的
*.proyecta.live子域名提供 HTTPS 和证书 - 应用数据的存储位置 — 你的应用内容、记录和目录存储在 Proyecta 平台数据层(基于 Postgres),按组织隔离并加密存储。你发布的应用通过可公开密钥(
pk_pub_*)访问数据,该密钥可以安全地随页面下发:服务端会将匿名请求限制为仅访问已发布内容,管理员操作还需要具备相应角色的已登录会话。每个请求都会针对你的组织进行授权验证——一个应用永远无法读取另一个应用的数据。 - 环境变量 — 密钥存储在专用的密钥存储库中,在适用的情况下同步到应用的 backend,且不会提交到代码库。注意:密钥对拥有项目访问权限的工作区成员可见。
- 隔离的运行时 — 每个项目在独立的容器中运行,因此开发环境的问题不会影响其他用户
- 在首次发布前运行审计 — 全面检查可在问题上线前将其发现。
- 重大变更后重新运行 — 添加身份认证、支付或文件上传功能会引入新的攻击面。
- 缩小审计范围 — 针对特定区域的审计比全应用扫描更快速、更彻底。