Обновление
Изменения:
- Во все запросы от authlib добавлен заголовок User-Agent: Mozilla/5.0
Изменение добавлено в следующие версии библиотек:
authlib-1.5.25_skinfix.jar
authlib-3.3.39_skinfix.jar
authlib-2.1.28_skinfix.jar
authlib-5.0.47_skinfix.jar
authlib-3.18.38_skinfix.jar
Зачем это:
Ко мне обратился один человек, у которого система авторизации переехала за CloudFlare и неожиданно всё перестало работать: не проходили запросы от клиента и от сервера до системы авторизации.
Оставлю его цитату после того, как он нашел решение (за что ему огромное спасибо):
В общем. Всё оказалось на много интереснее.
Дело оказалось вот в чём. Cloudflare использует не просто защищённые сервера, но и оптимизирует запросы используя CDN
Как я понял отсутствие значение User-Agent для неё само по себе является "аномалией". Обычно пустые User-Agent используют боты. Cloudflare это фиксирует . И для снижение нагрузки на конечный сервер, стремиться убрать "мусор", запросы с пустыми User-Agent будут заблокированы на уровне CDN. Иными словами до нашего сервера и до NGINX не дойдут.
В Cloudflare в раздели Security есть вкладка, WAF которую можно использовать в качестве настройки User-Agent. Как это работает. Допустим один и тот же user-Agent может создавать атаку некую, искусственные запросы и прочее. Мы можем обнаружить атаку и заблокировать её вписав User-Agent. И атака не дойдёт даже до нашего сервера. Но, должны быть правила "разрешить", я пытался разрешить пустой User-Agent, ну не получилось, возможно я ещё до конца не разобрался, но увы.