Время от времени я получаю уведомления по электронной почте от GitHub, в которых говорится, что наш сервер TeamCity использует
устаревший формат токена. Старые токены доступа неотличимы от хэшей SHA. Новые токены
начать с легко подбираемого 3-символьного заголовка и иметь немного более высокую энтропию, сохраняя при этом ту же длину ключа
Я нашел и повторно сгенерировал все токены личного доступа и токены доступа OAuth, которые смог, но примерно раз в месяц я все еще получаю электронное письмо, которое выглядит примерно так:
Мы заметили, что приложение TeamCity(ci.support.example.com), принадлежащее организации, администратором которой вы являетесь, ExampleSolutions, использовало токен устаревшего формата для доступа к GitHub API 20 сентября 2021 г. в 17:07. (UTC) с заголовком пользовательского агента TeamCity Server 2021.1.2 (сборка 92869).
Проблема в том, что на данный момент я не знаю, какой токен личного доступа или токен OAuth вызывает проблему. У нас есть десятки уведомлений о сборке и множество других вызовов GitHub API.
Я просмотрел журналы TeamCity на интересующую дату и время (как загружено из «Администрирование»> «Диагностика»> «Журналы сервера»> «Недавние»). Журналы полны спама, и я не нахожу однозначной корреляции между временными метками писем с GitHub и тем, что я вижу в логах, и тем, что является трудно отследить данную конфигурацию сборки.
Все уведомления, которые я получил, приходятся на 20-е число месяца, поэтому я попытаюсь увеличить уровни журналов в этот день. Вероятно, я мог бы запустить wireshark для поиска исходящих подключений к GitHub, но я бы предпочел регистрировать события OAuth в TeamCity.
Думаю, я ищу одно из следующего:
- Есть ли способ специально регистрировать события OAuth в Github, и если да
- Могу ли я привязать его к данной конфигурации сборки
- Есть ли способ приблизиться к этой проблеме, о котором я не думал?