Аудит безопасности
Попроси AI проверить уровень защищённости твоего приложения, следуй приведённым ниже рекомендациям и храни секреты на странице Settings.
Безопасность в Proyecta обеспечивается сочетанием платформенных настроек по умолчанию, AI-проверок и нескольких привычек, которые стоит выработать. Вот как это устроено.
Запустить аудит безопасности
Заголовок раздела «Запустить аудит безопасности»Открой Command Palette (Cmd+K / Ctrl+K) и выбери Run Security Audit. Это отправит развёрнутый запрос на проверку безопасности в AI, который прочитает весь твой код и выдаст список уязвимостей с приоритетами и конкретными способами их устранения.
Аудит проверяет:
- Захардкоженные API-ключи, токены или пароли в исходных файлах
- Переменные окружения с префиксом
VITE_, которые передают секреты на клиент - Отсутствие серверной валидации входных данных на API-endpoints
- Страницы или API-endpoints без аутентификации
- Неэкранированный пользовательский контент (риски XSS)
- Уязвимости в зависимостях
- Смешанный контент или захардкоженные URL с
http:// - Отсутствие валидации при загрузке файлов
Аудит безопасности можно также запустить вручную из чата или сузить его до конкретной области:
"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"
Рекомендации по безопасности
Заголовок раздела «Рекомендации по безопасности»Храни секреты надёжно
- Сохраняй все API-ключи, учётные данные для баз данных и токены сторонних сервисов в разделе Environment Variables на странице Settings
- Никогда не вставляй секреты в сообщения чата и не коммить их в код
- Если секрет оказался скомпрометирован, немедленно отзови его у стороннего провайдера и создай новый
Ограничивай доступ
- Реализуй в приложении разграничение прав на основе ролей (
"Add admin and member roles. Only admins can access /admin pages.") - Ограничивай доступ к чувствительным страницам и endpoints только аутентифицированными пользователями
- Всегда валидируй пользовательский ввод на сервере, а не только на клиенте
Используй HTTPS повсеместно
- Все опубликованные приложения Proyecta автоматически обслуживаются по HTTPS
- SSL-сертификаты выпускаются и обновляются автоматически
- Для кастомных доменов это тоже работает, как только DNS настроен правильно
Поддерживай зависимости в актуальном состоянии
- Периодически спрашивай AI:
"Check my dependencies for known security vulnerabilities and upgrade the vulnerable ones." - Проверяй, что именно изменил AI — обновления зависимостей иногда содержат breaking changes
Запускай аудит после крупных изменений
- Повторно запускай аудит после добавления аутентификации, платежей, загрузки файлов или любой функциональности, затрагивающей данные пользователей
- Перед первой публикацией в production сделай полную проверку
Что Proyecta берёт на себя
Заголовок раздела «Что Proyecta берёт на себя»- HTTPS и сертификаты для твоего субдомена
*.proyecta.live - Переменные окружения — секреты хранятся в выделенном хранилище и синхронизируются с backend твоего приложения (Convex), не попадая в кодовую базу. Обрати внимание: секреты видны участникам рабочего пространства с доступом к проекту.
- Изолированные среды выполнения — каждый проект работает в собственном контейнере, поэтому проблемы в dev-окружении не влияют на других пользователей
- Запускай аудит перед первой публикацией — полная проверка выявит проблемы до того, как они окажутся в открытом доступе.
- Повторяй аудит после крупных изменений — добавление auth, платежей или загрузки файлов расширяет поверхность атаки.
- Сужай область проверки — аудит конкретных участков выполняется быстрее и даёт более детальные результаты, чем проверка всего приложения сразу.