[ rusttv.org · сайт і розширення chrome ]
Політика конфіденційності
Цей переклад надано для зручності. У разі будь-яких розбіжностей переважну силу має російська версія цієї політики.
RustTV.org — каталог серверів гри Rust: розклад вайпів, онлайн і пінг. Проєкт складається із сайту rusttv.org та розширення для Chrome. Ми не збираємо персональних даних, не показуємо рекламних трекерів і нікому не передаємо та не продаємо дані користувачів.
Коротко
- Обране й налаштування зберігаються в браузері — у chrome.storage вашого профілю. На наші сервери вони не надсилаються.
- Замір пінгу вмикаєте ви самі — він працює з вашого пристрою напряму до ігрових серверів; результати лишаються локально.
- API бачить вашу IP-адресу — як і будь-який сайт, до якого звертається браузер. Вона використовується під час обробки запиту й потрапляє лише до звичайних журналів вебсервера.
- Немає аналітики, реклами, продажу даних і віддаленого коду.
1. Що робить розширення
Розширення показує в панелі браузера список Rust-серверів із даними нашого публічного API: назву, онлайн, карту, мережу, час минулого й наступного вайпу. Пінг розширення за вашою згодою міряє саме — про це розділ 3. Сервер можна додати до обраного й отримувати сповіщення незадовго до вайпу (і, за бажанням, одразу після нього). Іконка розширення показує зворотний відлік до найближчого вайпу з обраного.
Розширення не вбудовує скриптів у вебсторінки, не читає історію, вкладки, буфер обміну та вміст сторінок. Воно працює лише зі своїм попапом, сторінкою налаштувань і нашим API.
2. Які дані зберігає розширення
Усі дані розширення лежать у сховищі браузера (chrome.storage) усередині вашого профілю. Це єдине місце, де вони існують: копії на наших серверах немає.
chrome.storage.sync
- Обрані сервери — список ідентифікаторів серверів із нашого каталогу (до 50).
- Налаштування — за скільки хвилин попереджати про вайп, чи потрібне сповіщення після вайпу, регіон за замовчуванням.
Сховище sync синхронізується між вашими пристроями засобами самого Chrome, якщо ви увійшли в акаунт Google і ввімкнули синхронізацію. Ця передача відбувається між вами та Google; ми не маємо до неї доступу й не отримуємо її вмісту. Вимкнути синхронізацію можна в налаштуваннях Chrome.
chrome.storage.local
- Кеш даних — останній завантажений зріз обраних серверів і найближчих вайпів, щоб попап відкривався миттєво й працював, коли API недоступний.
- Службовий стан сповіщень — про який вайп уже повідомили, щоб не показувати те саме двічі.
- Кеш пінгу — виміряні значення, оцінки за відстанню та базова затримка до API; живуть 5 хвилин і обмежені за обсягом.
- Ваші приблизні координати — відповідь /api/v1/geo (рівень міста/регіону), щоб не запитувати її щоразу під час відкриття попапа. Живе кілька годин і використовується лише для оцінки пінгу за відстанню.
- Прапорець «дозвіл уже запитували» — щоб не показувати запит повторно.
Ніщо з переліченого не залишає браузер. Видалення розширення видаляє і його сховища.
3. Замір пінгу (за вашою згодою)
Manifest V3 не дає розширенням сирих сокетів, а Rust-сервери відповідають по UDP, тому «справжній» ігровий пінг із браузера виміряти неможливо. Розширення робить це опосередковано: відкриває звичайне мережеве з’єднання до IP:порт ігрового сервера й засікає час до відповіді (зазвичай — до відмови у з’єднанні). Цей час і є оцінкою RTT.
- Функція вимкнена за замовчуванням. Вона потребує необов’язкового дозволу на хости, який запитується через стандартний діалог Chrome (chrome.permissions.request).
- З’єднання йдуть з вашого пристрою напряму до IP-адрес ігрових серверів. Ці адреси, як і будь-які мережеві з’єднання вашого комп’ютера, видно вашому інтернет-провайдеру та власникові сервера.
- Жодних даних при цьому не передається: запит іде в режимі no-cors без cookie та облікових даних, відповідь не читається — вимірюється тільки час.
- Результати лишаються в браузері (кеш на 5 хвилин) і нам не надсилаються.
- Дозвіл можна відкликати будь-якої миті на сторінці налаштувань розширення — кнопка «Відкликати доступ» — або засобами Chrome.
Без цього дозволу розширення взагалі не відкриває з’єднань до ігрових серверів: воно вимірює лише власну затримку до нашого API й показує її в підвалі списку, а в колонці пінгу — оцінку за відстанню, позначену знаком «≈». Так само рахує пінг і сайт rusttv.org: розрахунок цілком відбувається у вашому браузері (див. розділ 4).
4. Звернення до API rusttv.org
І сайт, і розширення читають дані з публічного API https://rusttv.org/api/v1. API працює тільки на читання (GET), анонімно, без авторизації та без cookie.
Як і за будь-якого HTTPS-запиту, наш сервер бачить IP-адресу, з якої надійшов запит, і стандартні заголовки браузера (User-Agent, мова). Ми використовуємо це так:
- Обмеження частоти запитів — лічильник запитів на IP (60 запитів за хвилину; 300 для точки заміру затримки), щоб API не поклали автоматикою. Лічильник живе в оперативній пам’яті й обнуляється сам.
- Гео-оцінка пінгу — сайт і розширення звертаються до точки /api/v1/geo, яка визначає за вашою IP-адресою приблизні координати (рівень міста/регіону) за локальною офлайн-базою DB-IP і одразу повертає їх вам із заголовком Cache-Control: no-store. Відповідь нікуди не записується; відстань до сервера й сама оцінка пінгу обчислюються вже у вашому браузері. Запитів до сторонніх геосервісів при цьому не робиться.
- Журнали вебсервера — звичайний access-log nginx (IP, час, шлях, код відповіді, User-Agent). Він потрібен для діагностики та захисту від зловживань, ротується штатними засобами сервера, не використовується для профілювання й не пов’язується з особою.
Жодних профілів, ідентифікаторів користувача, cookie та міжсайтового стеження. Ваші обрані сервери й налаштування до API не передаються: запити каталогу однакові для всіх.
5. Сповіщення
Сповіщення про вайпи формуються на вашому пристрої через chrome.notifications: розширення за будильником (chrome.alarms) оновлює дані обраних серверів і порівнює час наступного вайпу з вашим налаштуванням. Push-сервіси не використовуються, стороннім сервісам нічого не надсилається.
6. Дозволи розширення й навіщо вони потрібні
- storage
- Зберігати обране й налаштування в браузері, а також кеш каталогу та пінгу.
- alarms
- Періодично оновлювати дані обраного й спрацьовувати точно до часу вайпу: service worker у MV3 вивантажується, і таймери в ньому не переживають вивантаження.
- notifications
- Показувати сповіщення про близький вайп обраного сервера і, за бажанням, про те, що вайп уже відбувся.
- offscreen
- Виконувати серію замірів часу відгуку в прихованому документі: service worker завершується раніше, ніж вимірювання встигає закінчитися.
- https://rusttv.org/*
- Читати каталог серверів і розклад вайпів із нашого API. Єдина зовнішня адреса, до якої розширення звертається саме по собі.
- *://*/* (необов’язкове)
- Тільки для прямого заміру пінгу: адреси ігрових серверів заздалегідь невідомі й змінюються, тому конкретний список хостів у маніфест вписати неможливо. Запитується за вашою явною згодою, використовується виключно для з’єднання з IP:порт сервера з каталогу, жодних скриптів на сторінки не впроваджує та вмісту сайтів не читає. Відкликається в налаштуваннях.
7. Чого ми не робимо
- Не збираємо ім’я, e-mail, телефон, адресу, платіжні дані та будь-які інші персональні відомості.
- Не підключаємо аналітики, лічильників, рекламних мереж і трекерів.
- Не продаємо й не передаємо даних користувачів третім особам і не використовуємо їх для цілей, не пов’язаних із роботою розширення.
- Не завантажуємо й не виконуємо віддаленого коду: увесь код розширення входить до опублікованого пакета.
- Не використовуємо дані для оцінки кредитоспроможності й не передаємо їх брокерам даних.
8. Як видалити свої дані
Видаліть розширення в chrome://extensions — разом із ним видаляються обидва його сховища. Обране можна очистити й вручну, прибравши сервери зірочкою, а дозвіл на замір пінгу — відкликати на сторінці налаштувань розширення. Даних про вас на нашому боці не лишається, бо ми їх не зберігаємо.
9. Діти
Сервіс не адресовано дітям, молодшим за 13 років, і він свідомо не збирає даних ні в кого, включно з дітьми.
10. Зміни політики
Якщо політика зміниться, ми оновимо дату набрання чинності вгорі сторінки. Суттєві зміни буде відображено в описі розширення в Chrome Web Store.