Недавно обновились до версии 2.4.0.beta4 (1576b07a10), и после обновления одно из наших внешних приложений больше не может аутентифицироваться через API Discourse.
Приложение выдает простую ошибку:
The request was aborted: Could not create SSL/TLS secure channel.
Приложение использует TLS 1.2. Неужели он больше не поддерживается?
Есть ли какие-то мысли о недавних изменениях, которые могли бы сэкономить мне несколько часов отладки другого приложения?
Хорошо, тогда я займусь отладкой. Видимо, что-то ещё изменилось в нашем Discourse, из-за чего внешние приложения перестают работать, так как проблема наблюдается как в dev, так и в prod-окружениях.
Оказывается, у нас возникла очень похожая проблема, описанная здесь:
Наше внешнее устаревшее приложение, подключающееся к нашему API Discourse, работает на старом сервере Windows 2008 R2.
По какой-то причине сервер Windows и сервер Discourse не смогли договориться о наборе шифров после установки недавних обновлений Discourse в начале этой недели. Не знаю, были ли изменены некоторые шифры в ходе обновления или эта проблема совпала с обновлением сертификата LetsEncrypt в то же время
В любом случае, вместо того чтобы редактировать конфигурацию Discourse, я смог добавить несколько наборов шифров на сервер Windows, которые подходят обоим системам, снова с помощью ссылки на SSL Labs, которой поделился @Falco выше
Полагаю, это было вызвано изменением наборов шифров при обновлении до Debian. Я ожидал, что добавленный мной сертификат с эллиптической кривой позволит работать на всех старых системах Windows, а не только в IE11. Если я не ошибаюсь, IE11 использует криптографическую библиотеку Windows…