Аудит безопасности
Попроси AI проверить уровень безопасности твоего приложения, следуй приведённым ниже рекомендациям и храни секреты на странице Settings.
Безопасность в Proyecta обеспечивается сочетанием платформенных настроек по умолчанию, AI-проверок и нескольких привычек, которые стоит выработать. Вот как это работает.
Запуск аудита безопасности
Заголовок раздела «Запуск аудита безопасности»Открой Command Palette (Cmd+K / Ctrl+K) и выбери Run Security Audit. Это отправляет AI расширенный security-запрос: 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 - Хранение данных приложения — контент, записи и каталог твоего приложения хранятся в платформенном слое данных Proyecta (на базе Postgres), изолированы в рамках твоей организации и зашифрованы в состоянии покоя. Опубликованное приложение обращается к ним с помощью publishable key (
pk_pub_*), который безопасно включать в страницу: сервер ограничивает анонимные запросы только опубликованным контентом, а административные действия дополнительно требуют авторизованной сессии с нужной ролью. Каждый запрос авторизуется в рамках твоей организации — одно приложение никогда не сможет прочитать данные другого. - Environment variables — секреты хранятся в выделенном хранилище, синхронизируются с backend твоего приложения там, где это применимо, и никогда не попадают в кодовую базу. Обрати внимание: секреты видны участникам workspace, у которых есть доступ к проекту.
- Изолированные runtime-окружения — каждый проект работает в собственном контейнере, поэтому проблемы в dev-окружении не затрагивают других пользователей
- Запусти аудит перед первой публикацией — полная проверка выявит проблемы до того, как они попадут в production.
- Перезапускай после крупных изменений — добавление авторизации, платежей или загрузки файлов расширяет поверхность атаки.
- Сужай область проверки — аудиты конкретных областей выполняются быстрее и дают более детальные результаты, чем проверка всего приложения целиком.