\ r \ n символов в маркере kerberos - это проблема, потому что \ r является управляющими символами HTTP.По сути это означает, что сервер видит только первую строку токена и игнорирует остальные, следовательно, не проходит аутентификацию.Что еще хуже, следующие подобные токены рассматриваются как новые заголовки и не будут хорошо отформатированы.Таким образом, http-сервер будет в шоке.
Причина, по которой это происходит, заключается в том, что спецификация RFC 1521 гласит, что длина строки кодирования base64 ограничена 76 символами.Отсюда \ r \ n символов.И это не работает с протоколом HTTP.Это появляется только в том случае, если вы используете токены Kerberos, закодированные в base64.
Таким образом, решение этой проблемы заключается в удалении \ r \ n символов из заголовка токена в кодировке Kerberos base64.Кроме того, старые версии кодека apache commons не ограничивают кодирование base64 76 строками и, следовательно, не являются проблемой.Так что, если у вас есть зацепка в кодировке, удалите проблемные символы.Если вы этого не сделаете, используйте более старую версию Apache Commons Code с commons-httpclient.