Preview Protection
Preview деплои могут содержать незавершённый функционал или конфиденциальные данные. ONREZA предоставляет несколько способов защиты.
Способы защиты
Заголовок раздела «Способы защиты»| Метод | Описание | План |
|---|---|---|
| OAuth Protection | Вход через ONREZA аккаунт | Все |
| Password Protection | Доступ по паролю | Pro |
| Bypass Secrets | Токены для CI/CD и автоматизации | Pro |
OAuth Protection
Заголовок раздела «OAuth Protection»При включённой OAuth защите, для просмотра preview деплоя нужно войти через ONREZA.
Как работает
Заголовок раздела «Как работает»- Пользователь открывает URL preview деплоя
- Перенаправляется на страницу входа ONREZA
- После успешного входа получает доступ к деплою
- Доступ сохраняется в сессии
Кто имеет доступ
Заголовок раздела «Кто имеет доступ»- Участники workspace с любой ролью
- Владелец проекта
Включение OAuth Protection
Заголовок раздела «Включение OAuth Protection»-
Откройте настройки проекта
Перейдите в проект → Settings → Security
-
Найдите секцию Preview Protection
-
Включите OAuth Protection
Активируйте переключатель
Bypass для автоматизации
Заголовок раздела «Bypass для автоматизации»При включённой защите системные проверки (smoke testing) используют внутренний bypass автоматически.
Для CI/CD и внешней автоматизации используйте Bypass Secrets.
Password Protection
Заголовок раздела «Password Protection»Доступно на плане Pro
Позволяет защитить preview деплои простым паролем.
Как работает
Заголовок раздела «Как работает»- Пользователь открывает URL preview деплоя
- Видит форму ввода пароля
- После ввода правильного пароля получает доступ
- Пароль сохраняется в cookie браузера
Настройка пароля
Заголовок раздела «Настройка пароля»-
Откройте настройки проекта
Перейдите в проект → Settings → Security
-
Найдите секцию Password Protection
-
Нажмите Set Password
-
Введите пароль
Минимум 8 символов, максимум 100
-
Сохраните
Смена пароля
Заголовок раздела «Смена пароля»- Откройте Settings → Security
- Нажмите Change Password
- Введите новый пароль
- Сохраните
Удаление пароля
Заголовок раздела «Удаление пароля»- Откройте Settings → Security
- Нажмите Remove Password
- Подтвердите удаление
Комбинирование методов
Заголовок раздела «Комбинирование методов»Вы можете использовать оба метода одновременно:
- OAuth Protection — для членов команды
- Password Protection — для внешних стейкхолдеров
Пользователь может пройти аутентификацию любым способом.
Bypass Secrets
Заголовок раздела «Bypass Secrets»Доступно на плане Pro
Bypass Secrets — токены для программного доступа к защищённым preview деплоям. Идеальны для CI/CD, мониторинга и автоматизированного тестирования.
Как работает
Заголовок раздела «Как работает»- Создайте bypass secret в настройках проекта
- Используйте токен при запросах к preview деплою
- Запрос обходит OAuth и Password защиту
- ONREZA отслеживает использование каждого секрета
Создание Bypass Secret
Заголовок раздела «Создание Bypass Secret»-
Откройте настройки проекта
Перейдите в проект → Settings → Security
-
Найдите секцию Bypass Secrets
-
Нажмите Create
-
Введите название
Укажите для чего используется секрет (например, “GitHub Actions”, “Monitoring”). Максимум 200 символов.
-
Скопируйте секрет
Секрет показывается только один раз. Сохраните его в безопасном месте.
Использование
Заголовок раздела «Использование»Через HTTP заголовок:
X-Onreza-Protection-Bypass: YOUR_SECRETЧерез query параметр:
https://myproject-git-feature-workspace.onreza.app?_bypass=YOUR_SECRETПримеры интеграций
Заголовок раздела «Примеры интеграций»GitHub Actions:
jobs: e2e-tests: steps: - name: Run tests against preview env: ONREZA_BYPASS_SECRET: ${{ secrets.ONREZA_BYPASS }} run: | # Используйте bypass secret в запросах к preview URL curl -H "X-Onreza-Protection-Bypass: $ONREZA_BYPASS_SECRET" \ https://myproject-git-feature-workspace.onreza.appPlaywright:
export default { use: { extraHTTPHeaders: { 'X-Onreza-Protection-Bypass': process.env.ONREZA_BYPASS_SECRET } }}Monitoring:
#!/bin/bash# Проверка доступности preview через bypass secretstatus=$(curl -s -o /dev/null -w "%{http_code}" \ -H "X-Onreza-Protection-Bypass: your-secret" \ https://myproject-git-feature-workspace.onreza.app)
if [ "$status" != "200" ]; then echo "Health check failed: HTTP $status" exit 1fiУправление секретами
Заголовок раздела «Управление секретами»Лимиты:
- Максимум 10 секретов на проект
Просмотр:
- Список всех секретов в Settings → Security
- Для каждого видно: название, первые символы, дата создания, последнее использование
Перегенерация:
- Найдите секрет в списке
- Нажмите меню (⋮) → Regenerate
- Скопируйте новый секрет
- Обновите во всех системах
Удаление:
- Найдите секрет в списке
- Нажмите меню (⋮) → Delete
- Подтвердите удаление
Безопасность
Заголовок раздела «Безопасность»- Храните секреты в переменных окружения или secrets managers
- Не коммитьте секреты в репозиторий
- Используйте разные секреты для разных систем
- Регулярно ротируйте секреты
- Мониторьте “Last used” для неиспользуемых секретов
Production vs Preview
Заголовок раздела «Production vs Preview»| Настройка | Production | Preview |
|---|---|---|
| OAuth Protection | Не применяется | Применяется |
| Password Protection | Не применяется | Применяется |
| Bypass Secrets | Не применяется | Применяется |
Share Link
Заголовок раздела «Share Link»Для быстрого доступа к preview деплою можно создать share link:
- Откройте страницу деплоя
- Нажмите Share
- Скопируйте ссылку
Share link включает:
- URL деплоя
- Bypass token (если включена защита)
Это позволяет поделиться деплоем без необходимости входа.
Troubleshooting
Заголовок раздела «Troubleshooting»”Unauthorized” при открытии preview
Заголовок раздела «”Unauthorized” при открытии preview»- Убедитесь что вы вошли в ONREZA
- Проверьте что у вас есть доступ к workspace
- Попробуйте выйти и войти снова
Пароль не принимается
Заголовок раздела «Пароль не принимается»- Проверьте правильность пароля (case-sensitive)
- Попробуйте ввести заново
- Очистите cookies браузера
- Проверьте что пароль не был изменён
Smoke Testing не работает
Заголовок раздела «Smoke Testing не работает»При включённой защите smoke testing использует bypass. Если есть проблемы:
- Проверьте что bypass token сгенерирован (он создаётся автоматически)
- Обратитесь в поддержку если проблема сохраняется