GitHub повідомив розробникам, що в періоди підвищеного або незвичного навантаження окремі операції git clone та git fetch з публічних репозиторіїв через HTTPS можуть раптово вимагати входу в акаунт. Таким чином сервіс прагне утримати стабільну роботу github.com навіть у пікові моменти. Відповідну інформацію компанія розмістила у журналі змін 19 жовтня.
Як працюватиме обмеження
Коли конкретний запит підпадає під тимчасовий захист, він завершується помилкою з позначкою про потребу авторизуватися. У такому разі користувачу лишається або пройти автентифікацію і повторити команду, або зачекати, поки обмеження скасують, і тоді спробувати без входу в акаунт.
GitHub застосовує цей механізм не до всіх підряд, а вибірково — орієнтуючись на ознаки нетипової активності. Втім компанія визнає: подібні сигнали іноді трапляються і в поведінці звичайних користувачів, тому під роздачу можуть потрапити й цілком легітимні запити без авторизації. При цьому в GitHub наголошують, що мова не йде про постійну та загальну вимогу авторизації для роботи з публічними репозиторіями.
Що залишиться без змін
Нове обмеження не торкнеться таких випадків:
- Git-операції через HTTPS, які вже виконуються з авторизацією
- Доступ до репозиторіїв через SSH
- Відправлення змін командою push
- Весь інший веб-трафік GitHub та API-запити, що не стосуються цього захисту
Рекомендації від GitHub
Компанія радить заздалегідь налаштувати авторизацію для автоматизованих систем, які регулярно клонують репозиторії або підтягують із них оновлення. Конкретний підхід залежить від середовища, в якому працює процес.
- Для GitHub Actions підійде вбудований
GITHUB_TOKEN - Для інших CI-систем варто використовувати токен доступу встановленого застосунку GitHub App — це пріоритетний варіант; альтернативою є персональний токен доступу (PAT)
- Якщо авторизувати операцію неможливо, залишається чекати, поки тимчасове обмеження знімуть, і повторити спробу
Детальні інструкції з налаштування GitHub опублікував у своїй документації — окремо про автентифікацію в GitHub, окремо про керування віддаленими репозиторіями.
Кого стосується зміна
Захист поширюється на всі репозиторії на github.com незалежно від тарифного плану користувача. Водночас у повідомленні GitHub не розкрив ні тривалості самих обмежень, ні причин, що викликають аномальний трафік, ні конкретних критеріїв, за якими запити визначають як «підозрілі».
Нагадаємо, що раніше нова версія GitHub Mobile отримала можливість створювати репозиторії прямо зі смартфона.
Джерело: Highload.tech


