Обзор
Adal ограниченное время хранит принятые вебхуки, чтобы их можно было просматривать, доставлять настроенным получателям, отправлять повторно и изучать историю доставки.
У каждого сервера есть регион и срок хранения, определяемый тарифом. Данные принятого запроса хранятся до окончания его индивидуального срока.
Удаление сервера немедленно останавливает приём и удаляет получателей. Ранее принятые запросы сохраняются до запланированной даты удаления.
Здесь описано, что хранит Adal, как обрабатываются отклонённые запросы, как работает срок хранения и что происходит при удалении данных.
Что хранит Adal
Adal хранит данные, необходимые для приёма и доставки вебхуков, истории запросов и доступа к аккаунту.
Запросы вебхуков
Для каждого принятого запроса Adal хранит:
полный URI с путём и строкой запроса;
заголовки;
тело;
IP-адрес отправителя;
дату и время получения;
принявший сервер;
попытки доставки и их результаты, включая статус или ошибку, например
200 OKили404 Not Found.
Версия HTTP отдельно не хранится. User-Agent сохраняется в составе заголовков запроса.
Adal не хранит заголовки и тела ответов получателей, а также отдельные сведения о TLS и IP прокси.
Серверы
Для каждого сервера Adal хранит:
выбранный регион;
название;
URL приёма;
разрешённые HTTP-методы;
примечания пользователя;
хеш токена Adal CLI.
Исходный токен CLI не хранится. При подключении переданный токен хешируется и сравнивается с хешем.
Получатели
Для каждого получателя Adal хранит:
связь с сервером;
регион связанного сервера;
тип доставки: Direct HTTP или Adal CLI;
указанный пользователем URL;
максимальное число попыток;
интервал доставки;
примечания.
Данные аккаунта
Для каждого аккаунта Adal хранит:
дату регистрации;
адрес электронной почты;
имя пользователя;
хеш пароля при аутентификации по почте и паролю.
Для аккаунта через Google или GitHub сохраняются поставщик идентификации и переданные им данные.
Аутентификация и сессии
Для поддержки сессий Adal хранит refresh-токены в зашифрованном виде.
Временные access-токены действуют пять минут, используются для доступа к данным аккаунта и не хранятся как долгосрочные учётные данные сессии.
Что Adal не хранит
Adal не хранит данные, которые не нужны для приёма, доставки и просмотра вебхуков.
Adal не хранит:
пароли в исходном виде;
токены Adal CLI в исходном виде;
версию HTTP как отдельное поле;
заголовки и тела ответов получателей;
сведения о TLS-соединении;
IP прокси как отдельные метаданные;
User-Agentкак отдельное поле, поскольку он входит в сохранённые заголовки.
Для отклонённых запросов сохраняются только время, HTTP-метод и причина отказа, без URI, заголовков, тела и IP отправителя.
Adal не получает и не хранит полные данные платёжных карт. Платежи обрабатывает платёжный провайдер.
Отклонённые запросы
Adal отклоняет запрос, если он не соответствует требованиям сервера или аккаунта.
Запрос может быть отклонён, если:
HTTP-метод не разрешён;
размер превышает лимит тарифа;
у аккаунта нет кредитов;
сервер удалён или недоступен;
обработке мешает ошибка проверки или сервиса.
Для устранения неполадок сохраняются только:
дата и время отказа;
HTTP-метод;
причина отказа.
URI, заголовки, тело, IP отправителя и данные доставки не сохраняются.
Отклонённые запросы не доставляются, не отправляются повторно и не расходуют кредиты.
Где хранятся данные
Данные запросов хранятся в выбранном для сервера регионе.
Метаданные и сведения о доставке остаются в регионе приёма. Тела находятся в объектном хранилище, ограниченном юрисдикцией этого региона.
Например, метаданные запроса сервера в se1 остаются в Швеции, а тело — в хранилище, ограниченном Западной Европой.
Тела запросов
Тела хранятся в объектном хранилище Cloudflare R2.
Для регионов используются отдельные бакеты R2:
Швеция и Германия — хранилище в Западной Европе;
Казахстан — хранилище в Азиатско-Тихоокеанском регионе.
У каждого бакета отдельные учётные данные; сервисы имеют доступ только к бакету своего региона.
Метаданные запросов и доставки
Метаданные хранятся в управляемых Adal базах данных в регионе сервера.
В том числе:
URI, заголовки, IP отправителя и время получения;
статус и срок хранения;
попытки, статусы и ошибки доставки;
региональные записи получателей и их настройки.
Данные получателя хранятся только в регионе связанного сервера.
Централизованные записи серверов
Ограниченная часть настроек хранится централизованно, а не в региональной базе запросов.
В том числе:
название сервера;
URL приёма;
хеш токена Adal CLI;
примечания.
Централизованные записи не содержат тела, URI, заголовки, IP отправителя, историю доставки и получателей.
Статистика использования
Adal централизованно собирает ограниченную статистику для расчёта использования и отображения в аккаунте.
Она не содержит тела, URI, заголовки, IP отправителя, идентификаторы и настройки получателей.
Например, может фиксироваться расход одного кредита сервером или общий расход региона за период.
Срок хранения
Принятые запросы хранятся ограниченный срок, определяемый тарифом.
Срок начинается с момента принятия запроса.
У каждого запроса своя дата удаления, указанная на его странице в панели Adal.
После окончания срока Adal безвозвратно удаляет запрос, включая тело, URI, заголовки, IP, историю и записи попыток доставки.
Такие запросы нельзя восстановить, отправить или доставить повторно.
Удаление сервера
Удаление сервера немедленно прекращает приём новых запросов.
Adal использует мягкое удаление: сервер исчезает из панели и больше не работает, но его URL навсегда остаётся зарезервированным и не выдаётся другому аккаунту.
Это не позволяет удалённому URL впоследствии принять вебхуки, предназначенные прежнему владельцу.
При удалении сервера:
прекращается приём новых запросов;
все получатели удаляются безвозвратно;
ожидающие доставки отменяются;
попытки и связанные данные доставки удаляются;
сервер исчезает из панели и не используется для новых доставок.
Сохранённые запросы не удаляются сразу и остаются до окончания индивидуального срока хранения.
Пока запросы хранятся, поддержка Adal может восстановить сервер по обращению. Восстановление возможно только до истечения срока и не возвращает получателей, попытки и безвозвратно удалённые данные.
После окончания срока оставшиеся данные удаляются безвозвратно.
Ограничения размера запроса
Максимальный размер зависит от тарифа. Лимиты указаны на странице тарифов.
Adal рассчитывает размер всего входящего запроса:
размер запроса = размер URI + размер заголовков + размер тела
Ограничение применяется ко всему запросу, а не только к телу.
Если лимит превышен, Adal отклоняет запрос до сохранения содержимого. Он не доставляется и не расходует кредиты.
После повышения тарифа новый лимит действует только для последующих запросов. Ранее отклонённые запросы не сохраняются и не восстанавливаются автоматически.
Безопасность и доступ
Доступ защищён аутентификацией, краткосрочными учётными данными, шифрованием соединений и изоляцией региональных хранилищ.
Доступ к аккаунту
Каждый аккаунт Adal связан с подтверждённым адресом электронной почты.
При регистрации по почте и паролю необходимо подтвердить адрес до входа в панель.
Аккаунты через Google или GitHub используют данные, предоставленные выбранным провайдером.
Данные доступны только аккаунту — владельцу сервера. Аккаунт не может получить доступ к серверам, запросам, получателям и доставкам другого аккаунта.
Учётные данные и сессии
Adal не хранит пароли и токены Adal CLI в исходном виде.
пароли хранятся как хеши;
токены Adal CLI хешируются и проверяются сравнением хешей;
refresh-токены хранятся в зашифрованном виде;
access-токены действуют пять минут.
Зашифрованные соединения
Все соединения с Adal шифруются при передаче:
панель и API используют HTTPS;
Adal CLI — WSS или gRPC с TLS в зависимости от типа;
внутренние сервисы используют TLS там, где это применимо.
Содержимое запросов и журналы
Операционное журналирование Adal намеренно сведено к минимуму.
Тела, заголовки, URI, IP отправителей и другое содержимое не попадают в обычные журналы. Записываются только операционные и критические ошибки, необходимые для анализа сбоев.
Доступ к региональным хранилищам
Тела хранятся в отдельных региональных бакетах. У каждого региона собственные учётные данные, ограниченные назначенным ему хранилищем.
Региональные сервисы не используют общие учётные данные с доступом ко всем регионам.
Доступ оператора сервиса
В Adal нет внутренней административной панели для просмотра запросов клиентов.
Оператор может иметь прямой доступ к инфраструктуре для обслуживания, защиты и устранения неполадок. Он недоступен другим пользователям и не применяется для рекламы, профилирования или посторонних целей.
Двухфакторная аутентификация для аккаунтов Adal пока недоступна.