Политика конфиденциальности
Последнее обновление: 16 июля 2026 г.
Эта политика объясняет, что собирает Astrina.io, зачем, как долго мы это храним и о чём вы можете нас попросить в связи с этим. Мы постарались написать её простым языком и быть конкретными там, где большинство политик аналитики расплывчаты — в частности, об IP-адресах, которые мы храним в необработанном виде. Там, где у нас чего-то ещё нет, мы прямо говорим об этом, а не намекаем на обратное.
Кто мы и как с нами связаться
Этот сервис работает под названием «Astrina» по адресу https://astrina.io. В настоящей политике «мы» и «Astrina.io» означают оператора сервиса.
У нас один контактный адрес, и он подходит для всего — вопросов о конфиденциальности, запросов на удаление данных и сообщений об уязвимостях безопасности: support@astrina.io.
Мы не публикуем соглашение об уровне обслуживания, поэтому не обещаем здесь никакого срока ответа. SLA существует только там, где заключён отдельный индивидуальный договор.
Кто контролирует данные: вы или мы
Это различие важно, потому что от него зависит, к кому посетителю следует обращаться по поводу своих данных.
- В отношении вашей собственной учётной записи у нас — вашего адреса электронной почты, тарифного плана, баланса и обращений в поддержку — то, как обрабатываются эти данные, определяем мы. Мы являемся контролёром.
- В отношении аналитики, записей сессий и SEO-данных, собираемых с отслеживаемого вами сайта, что именно собирается и зачем, решает наш клиент (владелец сайта). Клиент является контролёром, а Astrina.io выступает обработчиком, обрабатывая эти данные по указаниям клиента.
Это означает, что если вы — посетитель сайта, использующего Astrina, то стороной, ответственной за этот сбор, является владелец сайта, а не Astrina.io, в том числе за получение любого согласия, требуемого применимым к нему законодательством. Наше Дополнение об обработке данных описывает эти отношения.
Что мы собираем для вашей учётной записи
- Ваш адрес электронной почты.
- Ваш пароль — хранится только в виде хеша, созданного с помощью PHP password_hash() (bcrypt, PASSWORD_DEFAULT) и проверяемого через password_verify(). Мы никогда не храним и не записываем в журналы пароли в открытом виде.
- Ваша роль, тарифный план, дата окончания действия плана, баланс счёта и дата создания учётной записи.
- Токены подтверждения электронной почты и сброса пароля — хранятся в виде SHA-256-хеша токена, одноразовые, с ограниченным сроком действия.
В панели Astrina нет двухфакторной аутентификации и не поддерживается SSO. Мы заявляем об этом прямо, а не умалчиваем.
Тарифные планы оплачиваются с баланса счёта, пополняемого через Payora — нашего платёжного провайдера для карт и криптовалюты. Посмотреть наших субобработчиков.
Что мы собираем в качестве аналитики сайта
Для каждого просмотра страницы на сайте, который отслеживает наш клиент, мы записываем строку в таблицу «hit», содержащую:
- Время визита.
- Идентификатор посетителя — first-party идентификатор «_astr», сохраняемый на собственном домене клиента, либо, если он недоступен, запасной вариант, вычисляемый как md5(ip + user-agent + date).
- IP-адрес посетителя, хранимый в необработанном виде. Ниже этому посвящён отдельный раздел, потому что он того заслуживает.
- URL, заголовок страницы, реферер и хост реферера.
- Браузер, операционная система, устройство и размер экрана.
- Страна, взятая из заголовка запроса CF-IPCountry от Cloudflare, и язык.
- Метки utm_source, utm_medium и utm_campaign в URL, если они присутствуют.
Аналитика использует только first-party идентификатор посетителя. Мы не устанавливаем сторонних cookie, не ведём межсайтового отслеживания и не запускаем рекламных пикселей. Мы не продаём эти данные и никогда не передаём их рекламодателям.
Мы также формируем на основе этих хитов агрегированные суточные таблицы и таблицы разрезов (agg_day, agg_dim). Эти агрегаты хранятся бессрочно.
IP-адреса: что именно мы делаем
Мы храним IP-адрес посетителя в необработанном виде. Он не анонимизируется и не усекается. Мы предпочитаем сказать об этом прямо, а не называть себя анонимными, когда это не так.
Мы используем IP-адрес для двух целей и ни для каких других:
- Для вычисления резервного идентификатора посетителя, когда собственный идентификатор «_astr» недоступен. Идентификатор вычисляется как md5(ip + user-agent + date).
- Для выявления вероятных ботов путём классификации IP-адресов дата-центров и хостингов через обратный DNS. Задание выполняется каждые пять минут по IP-адресам, замеченным за последние четыре дня, а результаты хранятся в таблице «ip_intel».
Сколько мы его храним: IP-адрес хранится ровно столько же, сколько сырая строка хита, в которой он содержится. Это зависит от тарифа владельца сайта — 33 дня на Free, 180 дней на Pro, 365 дней на Business и 730 дней на Business Plus. Ежедневное задание удаляет строки с истёкшим сроком, а вместе с ними удаляется и IP-адрес.
Мы также храним IP-адрес каждого, кто оставляет отзыв; он используется только для ограничения частоты злоупотреблений.
Запись сессий
Запись сессий необязательна — она работает, только если владелец сайта добавит скрипт рекордера. Маскирование включено по умолчанию и применяется в браузере до того, как что-либо будет передано, а не вычищается потом на нашей стороне:
- Поля ввода пароля, электронной почты и телефона никогда не передают значение — даже его длину.
- Поля платёжных карт обрабатываются так же.
- Весь остальной вводимый текст маскируется точками.
- Любая часть страницы, отмеченная атрибутом [data-astr-mask], скрывается до того, как покинет браузер.
Записи по умолчанию хранятся 30 дней. Оператор может это настроить.
Отзывы
- Мы храним автора (вошедшего участника или гостя), оценку, текст, IP-адрес отправителя для ограничения частоты злоупотреблений и статус модерации.
- Отзывы от гостей публикуются после модерации. Отзывы от вошедших участников публикуются сразу.
- Изображения и видео-доказательства для некоторых типов отзывов хранятся вне корня веб-сервера и отдаются только через закрытый endpoint, который возвращает 403 во всех случаях, кроме тех, когда отзыв одобрен, либо вы его автор, либо вы администратор.
Подписи к номерам телефонов и как снять свой
- Некоторые люди включают в нашем приложении обмен контактами. Тогда мы получаем из их телефонной книги пары «номер + под каким именем он сохранён» — например «Курьер» или «Спам».
- Это значит, что у нас может лежать подпись к номеру человека, который Astrina никогда не пользовался. Мы храним номер, сохранённое имя и то, кто из участников это прислал, — последнее только затем, чтобы он мог забрать присланное обратно.
- Публично мы никогда не показываем, кто именно так сохранил номер. Показывается только счёт: «Курьер ×3».
- Если ваш номер там есть, его можно снять без учётной записи: astrina.io/unlist/. Мы не просим доказать, что номер ваш: доказательство означало бы взять с вас новые данные, а снятие только удаляет строки.
- Участник, поделившийся контактами, может в любой момент забрать всё присланное — прямо в приложении.
Поддержка, SEO-мониторинг и API
- Службы поддержки: мы храним ваши тикеты и сообщения в них.
- SEO-отчёты и история постраничного мониторинга по умолчанию хранятся 180 дней.
- API: один ключ на участника (ключи имеют префикс ak_), плюс посуточный счётчик вызовов, содержащий id участника, дату и количество вызовов.
Идентичности «Вход через Astrina»
Если вы привяжете аккаунт другого провайдера через наш OAuth-брокер, мы сохраним провайдера, ваш идентификатор пользователя у этого провайдера и всё, что провайдер нам возвращает, — как правило, адрес электронной почты, отображаемое имя и аватар.
Зачем мы обрабатываем эти данные
Описано в общих чертах и сгруппировано по целям:
- Чтобы предоставить то, о чём вы просили, — ведение вашего аккаунта, сбор статистики по добавленным вами сайтам, формирование отчётов и списание оплаты с вашего баланса. Эта обработка необходима для оказания вам услуги.
- В наших законных интересах — поддерживать точность и безопасность сервиса: фильтрация ботов, ограничение частоты злоупотреблений в отзывах, модерация присланного контента и защита сервиса от атак.
- На основании согласия — там, где применимое право требует согласия для аналитики или записи сессий на сайте. Владелец сайта является контролёром для такого сбора и отвечает за получение согласия от своих посетителей.
- Для выполнения юридических обязанностей там, где они к нам применимы.
Сколько мы храним данные
| Данные | Срок хранения |
|---|---|
| Сырые хиты, включая сохранённый IP-адрес — Free | 33 дня |
| Сырые хиты, включая сохранённый IP-адрес — Pro | 180 дней |
| Сырые хиты, включая сохранённый IP-адрес — Business | 365 дней |
| Сырые хиты, включая сохранённый IP-адрес — Business Plus | 730 дней |
| Агрегированная статистика (agg_day, agg_dim) | Хранится бессрочно |
| Записи сессий | 30 дней |
| История SEO по страницам | 180 дней |
| Данные аккаунта | Пока существует аккаунт — удаляются по запросу |
Сырые хиты удаляются ежедневным заданием. Все указанные выше сроки — значения по умолчанию, которые оператор может изменить. Подробнее о сроках хранения.
Одна честная оговорка о резервных копиях: ежедневная резервная копия файлов и базы данных создаётся примерно в 05:12 UTC и хранится на том же сервере. Хранится примерно одна суточная копия, и никакой внешней (off-site) или гео-избыточной репликации нет. Поэтому данные, которые вы попросили удалить, могут какое-то время оставаться в этой последней резервной копии после того, как они удалены из рабочей базы данных.
С кем мы делимся данными
Мы не продаём ваши данные и не передаём их рекламодателям. Полный список сторон, которые обрабатывают данные от нашего имени:
- OVH — хостинг инфраструктуры, в ЕС. Обрабатывает всё, что хранится на сервере.
- Cloudflare — DNS, CDN, терминация TLS и WAF. Обрабатывает метаданные запросов и IP-адреса.
- Payora — обработка платежей для пополнения баланса, картой и криптовалютой.
- Have I Been Pwned (Pwned Passwords) — проверка паролей на утечки. Отправляются только первые пять символов SHA-1-хеша, с использованием k-anonymity. Сам пароль никогда не покидает браузер или наш сервер, и никакие персональные данные не передаются.
Мы также получаем публичные каталожные данные из наборов данных CoinGecko, SteamSpy, Open Food Facts и IMDb. Обмен односторонний: они не получают от нас никаких персональных данных.
Исходящая почта отправляется с нашего собственного почтового сервера Exim с адреса noreply@astrina.io, с настроенным DKIM. Мы не используем стороннего почтового провайдера, поэтому ваш адрес ему не передаётся.
Смотреть полный список субобработчиков.
Файлы cookie и локальное хранилище
На самом astrina.io:
- astrsess — сессионный cookie. Строго необходимый. HttpOnly, Secure и SameSite=Lax.
- astr_lang — запоминает выбранный вами язык интерфейса.
- astr-theme — ваши настройки темы, хранятся в localStorage, а не в cookie.
Мы не устанавливаем на astrina.io рекламных или сторонних отслеживающих cookie.
На сайте клиента скрипт аналитики сохраняет «_astr» — собственный (first-party) идентификатор посетителя — в localStorage с резервным использованием cookie. Он устанавливается на собственном домене клиента, не может быть прочитан с других сайтов и не является сторонним cookie.
Как мы защищаем данные
Меры, которые у нас действительно реализованы:
- TLS на всём трафике — Cloudflare в режиме Full (strict) с сертификатом Let’s Encrypt на origin-сервере.
- Пароли хешируются с помощью bcrypt; они никогда не хранятся и не записываются в журналы в открытом виде.
- Сессионный cookie имеет флаги HttpOnly, Secure (по HTTPS) и SameSite=Lax.
- CSRF-токены при отправке форм, изменяющих состояние.
- API-ключи принимаются только в заголовке запроса (X-Api-Key или Authorization: Bearer). Мы намеренно не принимаем их в строке запроса URL, чтобы они не могли попасть в логи сервера, логи прокси, историю браузера или заголовки Referer. Вы можете в любой момент перегенерировать ключ на /my/api.php, что мгновенно отзывает старый.
- Приватный метод API аналитики не отправляет заголовок Allow-Origin, поэтому браузер не может прочитать его из другого источника (cross-origin). Публичные методы API открыты намеренно.
- SEO-краулер защищён от SSRF: разрешены только http и https, приватные, loopback- и link-local-диапазоны отклоняются, разрешённый IP закрепляется, каждый переход по редиректу проверяется заново, а размер тела ответа ограничен.
- Ограничения на отправку по IP и модерация отзывов; фильтрация ботов по правилам user-agent и классификации IP-адресов дата-центров.
- Административная зона закрыта проверкой роли.
Точно так же — вот чего у нас нет, чтобы вам не приходилось это домысливать: нет двухфакторной аутентификации, нет опубликованных тестов на проникновение, нет сертификации ISO, SOC 2 или иной, нет программы bug bounty и нет резервной копии вне площадки.
Сообщайте об уязвимостях безопасности на support@astrina.io. Подробнее о безопасности.
Ваши права и как ими воспользоваться
Там, где законодательство о защите данных предоставляет вам права в отношении ваших персональных данных — такие как доступ, исправление, удаление или возражение против обработки, — вы можете реализовать их, написав на support@astrina.io. Это единственный канал, и мы не будем делать вид, что это не так.
В частности, об удалении: на сегодняшний день в панели нет кнопки самостоятельного удаления аккаунта. Удаление аккаунта выполняется по запросу, отправленному на support@astrina.io.
Две вещи, которые вы можете сделать сами прямо сейчас, не обращаясь к нам:
- Удалить отдельный отслеживаемый сайт из своей панели — это удалит данные этого сайта.
- Перегенерировать или отозвать API-ключ в любой момент на /my/api.php.
Если вы посетитель сайта, который использует Astrina, и хотите, чтобы данные этого сайта о вас были удалены, то контролёром является владелец сайта, и обращаться следует именно к нему. Если вы обратитесь к нам, мы обработаем запрос по его указаниям, действуя как его обработчик.
Изменения в этой политике
Если мы изменим порядок обработки персональных данных, мы обновим эту страницу и дату «последнего обновления» выше. Если изменение существенное, мы опишем, что именно изменилось, а не заменим текст без объявления. Смотреть журнал изменений.
Вопросы по чему-либо на этой странице: support@astrina.io. Свяжитесь с нами.