Краткие честные ответы на вопросы, которые задаст ваша команда по безопасности.
Мы публикуем то, что делаем, и, не менее важно, то, чего не делаем. Никакого ретаргетинга сканирующих, никаких сторонних пикселей, никаких сырых IP или user agent'ов в нашей базе данных, никогда. Подробную разбивку по хранению данных см. на /security/; текущую доступность, на /status/.
1. Аналитика с приоритетом приватности
Согласно ADR-0004, конвейер сканирований никогда не логирует IP-адрес или сырой User-Agent. При получении мы читаем CF-IPCountry (страна) и пропускаем UA через регулярное выражение класса устройства (mobile / tablet / desktop / unknown), затем отбрасываем сырую строку. Данные на уровне города, агрегированный итог, заполняемый из request.cf.city, нет строки на каждое сканирование, нет объединяемого идентификатора. Страновые агрегаты менее 5 сканирований сворачиваются в «Other» для защиты от деанонимизации.
2. Зашифрованные резервные копии
Каждую ночь в 03:00 UTC отдельный Worker создаёт снимок D1 в R2. Резервные копии шифруются AES-GCM с ключом данных, ротируемым KDF и обёрнутым в BACKUP_ENCRYPTION_KEY. Каждый пакет несёт SHA-256-дайджест + манифест для обнаружения подделки (см. таблицу backups). Хранение: 7 лет для Pro-клиентов. Ключ шифрования хранится в трёх независимых копиях (Worker secret, хранилище 1Password, опечатанный оффлайн), потеря всех трёх сделает исторические резервные копии невосстановимыми, поэтому мы относимся к нему как к единой точке операционной правды.
3. API Shield + строгий CSP
Наша публичная спецификация OpenAPI 3.1 загружена в Cloudflare API Shield, и каждый запрос к /api/* проверяется по ней. Дрейф схемы устранён хуком post_deploy, который повторно загружает спецификацию при каждом продакшн-деплое. На фронтенде строгая Content Security Policy запрещает inline-скрипты везде, каждая страница подключает JS через <script src>, а предеплойный make check отказывается выпускать страницу, нарушающую это правило.
4. Лог аудита + реестр GDPR
Каждое изменение (создание/изменение/удаление кода, приглашение в команду, выпуск ключа, смена тарифа, редактирование вебхука) записывает только-добавляемую строку в audit_log с исполнителем, областью видимости и временем, хранится 180 дней и очищается sweeper'ом. Реестр GDPR-запросов (gdpr_requests) отслеживает каждый экспорт / удаление / восстановление; строки выживают после удаления аккаунта (FK ON DELETE SET NULL, email сохраняется), чтобы мы могли доказать своевременное выполнение каждого законодательного запроса спустя годы после удаления аккаунта.
5. Защита аутентификации
Аутентификация делегирована общему уровню идентификации abundera.ai (EdDSA JWT через JWKS). Доступно пользователям Pro:
- 2FA (TOTP), одноразовые пароли по RFC 6238 (на основе времени), любое стандартное приложение-аутентификатор, резервные коды при регистрации.
- SAML 2.0 SSO, Okta, Entra ID, JumpCloud, Google Workspace, кастомные IdP. Доступно на Team+ (в комплекте на Agency/Enterprise).
- SCIM 2.0 провизионирование, жизненный цикл пользователей + групп RFC 7643/7644, лимит запросов на токен, логируется в аудит. По умолчанию выключено; включается для каждого клиента отдельно.
- API-ключи, Business+, хранятся как
sha256(raw); сырое значениеabnd_qrpro_...возвращается только при создании и больше никогда.
6. Субпроцессоры
Краткий список: Cloudflare (хостинг, D1, KV, R2, API Shield), Stripe (платежи), Zoho / ZeptoMail (транзакционные письма), Twilio (верификация телефона + SMS). Полный список с регионами, категориями данных и нашим обязательством уведомления за 30 дней, на /trust/subprocessors/.
7. Соглашение об обработке данных
Наш DPA в соответствии с GDPR (EU SCC, UK Addendum, Swiss FADP Addendum) доступен для скачивания на abundera.ai/legal/dpa/. Применяется ко всем платным тарифам автоматически, отдельная встречная подпись не требуется, если только ваш процесс закупок её не требует (подпишем по запросу на legal@abundera.ai).
8. SOC 2
SOC 2 Type II, в процессе, цель Q3 2026. Мы находимся на этапе определения области охвата / планирования окна наблюдения с аудиторской фирмой, аффилированной с Big-4. До выпуска отчёта значок SOC 2 отображаться не будет. Если завершение SOC 2 является жёстким требованием закупок для вас сегодня, пишите на enterprise@abundera.ai, мы можем поделиться текущими доказательствами контролей, нашим черновым описанием системы и прогнозируемой датой аттестации под NDA.
9. Никаких сторонних пикселей, никогда
Это принципиальное обещание и продуктовая граница, а не умолчание, которое мы могли бы тихо изменить. Мы не встраиваем Google Analytics, Google Tag Manager, Meta Pixel, TikTok Pixel, LinkedIn Insight, Hotjar, FullStory или любой другой сторонний трекер, ни в наши ответы редиректа, ни в наши размещённые лендинги, ни в интерфейсы панели управления, которые видят ваши сканирующие. Ваши сканирующие никогда не ретаргетируются. Если вам нужна пиксельная атрибуция на вашем собственном лендинге, добавьте свои UTM (или пиксельные) параметры к URL назначения; мы остаёмся вне этого цикла. Редирект сам по себе, это 302 от нашего worker к вашему URL, и больше ничего не выполняется.
10. Ответственное раскрытие
Нашли что-то? Начните с /.well-known/security.txt для получения актуального контакта, ключа PGP и области охвата. Пишите на security@abundera.ai, подтверждаем в течение 24ч (рабочие дни), проводим триаж в течение 72ч, координируем исправление + раскрытие вместе с вами. Исследователи, сообщившие добросовестно, получают публичную благодарность на abundera.ai/security/thanks/ после выпуска исправления.
11. Статус и доступность
Текущий статус, состояние компонентов и история инцидентов, на /status/. Критический путь редиректа мониторится каждые 5 минут внешним Worker'ом; деградировавшие или недоступные компоненты отражаются на странице статуса в течение одного цикла опроса.