Перейти до вмісту

Аудит безпеки

Попросіть ШІ перевірити стан безпеки вашого застосунку, дотримуйтесь наведених нижче найкращих практик і зберігайте секрети на сторінці Settings.

Безпека в Proyecta забезпечується поєднанням платформних налаштувань за замовчуванням, перевірок на основі ШІ та кількох корисних звичок, які варто виробити. Ось як це все влаштовано.

Відкрийте Command Palette (Cmd+K / Ctrl+K) і виберіть Run Security Audit. Це надішле ШІ розгорнутий запит на перевірку безпеки: він прочитає весь ваш код і виведе вразливості з пріоритизованими результатами та конкретними способами виправлення.

Аудит перевіряє:

  • Захардкоджені API-ключі, токени або паролі у вихідних файлах
  • Змінні оточення з префіксом VITE_, які передають секрети на клієнт
  • Відсутність серверної валідації вхідних даних на API endpoint-ах
  • Сторінки або API endpoint-и без аутентифікації
  • Неекранований контент від користувача (ризики 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"

Найкращі практики безпеки

Section titled “Найкращі практики безпеки”

Зберігайте секрети в безпеці

  • Зберігайте всі API-ключі, облікові дані бази даних і токени сторонніх сервісів у розділі Environment Variables на сторінці Settings
  • Ніколи не вставляйте секрети в повідомлення чату і не комітьте їх у код
  • Якщо секрет було розкрито, негайно відкличте його у стороннього провайдера і створіть новий

Обмежуйте доступ

  • Реалізуйте рольові дозволи у своєму застосунку ("Add admin and member roles. Only admins can access /admin pages.")
  • Обмежуйте доступ до чутливих сторінок і endpoint-ів лише для аутентифікованих користувачів
  • Завжди валідуйте дані від користувача на стороні сервера, а не лише на клієнті

Використовуйте HTTPS скрізь

  • Усі опубліковані застосунки Proyecta автоматично обслуговуються через HTTPS
  • SSL-сертифікати видаються та оновлюються для вас автоматично
  • Для власних доменів те саме стосується після коректного налаштування DNS

Оновлюйте залежності

  • Periodically ask the AI: "Check my dependencies for known security vulnerabilities and upgrade the vulnerable ones."
  • Переглядайте зміни, які вносить ШІ, — оновлення залежностей іноді містять breaking changes

Запускайте аудит після великих змін

  • Повторно запускайте аудит після додавання аутентифікації, платежів, завантаження файлів або будь-чого, що стосується даних користувачів
  • Перед першою публікацією у production зробіть повну перевірку
  • HTTPS і сертифікати для вашого субдомену *.proyecta.live
  • Змінні оточення — секрети зберігаються у виділеному сховищі і синхронізуються з backend вашого застосунку (Convex), не потрапляючи до кодової бази. Зверніть увагу: секрети видимі учасникам воркспейсу, які мають доступ до проєкту.
  • Ізольовані середовища виконання — кожен проєкт працює у власному контейнері, тому проблеми в dev-середовищі не впливають на інших користувачів
  • Запустіть аудит перед першою публікацією — повна перевірка виявить проблеми до того, як вони потраплять у production.
  • Повторюйте аудит після великих змін — додавання аутентифікації, платежів або завантаження файлів розширює поверхню атаки.
  • Звужуйте область перевірки — аудити конкретних ділянок виконуються швидше і є більш детальними, ніж перевірка всього застосунку.