Spring Security SAML бесконечный цикл повторных попыток на плохой SAMLResponse - PullRequest
0 голосов
/ 10 мая 2019

В настоящее время я работаю над настройкой расширения SAML Spring Security (я являюсь поставщиком услуг, который хочет интегрироваться с несколькими поставщиками удостоверений).

Я заметил странное поведение.Когда все настроено правильно, федеративный вход в систему просто работает, и все идеально.Но когда возникает проблема с анализом SAMLResponse, мое приложение переходит в цикл повторных попыток (который я нигде не настроил).После нескольких сотен неудачных повторных попыток он возвращает 500 пользователю.Это сбрасывает тонну бесполезных трассировок стека в мои журналы.

Первое сообщение об ошибке синтаксического анализа SAMLResponse содержит действительную основную причину.Все остальные имеют ту же информацию: InResponseToField в SAMLResponse не соответствует идентификатору запроса в AuthnRequest.Но это очень странно, потому что в моем браузере я вижу только один запрос и один ответ (который появляется после завершения всех повторных попыток, и я получаю 500).И идентификаторы совпадают в этих двух запросах.

первый сбой:

{"@timestamp":"2019-05-10T13:20:17.628+0300","level":"INFO","thread":"http-nio-8000-exec-2","logger":"org.springframework.security.saml.log.SAMLDefaultLogger","message":"AuthNResponse;FAILURE;0:0:0:0:0:0:0:1;org:patkovskyi:test;http://www.okta.com/exkm1jqgci0YsCUgy0x7;;;org.opensaml.common.SAMLException: Response doesn't have any valid assertion which would pass subject validation\n\tat org.springframework.security.saml.websso.WebSSOProfileConsumerImpl.processAuthenticationResponse(WebSSOProfileConsumerImpl.java:229)}

повторов:

{"@timestamp":"2019-05-10T13:20:17.630+0300","level":"INFO","thread":"http-nio-8000-exec-2","logger":"org.springframework.security.saml.log.SAMLDefaultLogger","message":"AuthNResponse;FAILURE;0:0:0:0:0:0:0:1;org:patkovskyi:test;http://www.okta.com/exkm1jqgci0YsCUgy0x7;;;org.opensaml.common.SAMLException: InResponseToField of the Response doesn't correspond to sent message a1cj420hf746f14746d8c2gb014a588\n\tat org.springframework.security.saml.websso.WebSSOProfileConsumerImpl.processAuthenticationResponse(WebSSOProfileConsumerImpl.java:139)}

Кто-нибудь видел подобную проблему?И есть ли какой-нибудь скрытый механизм повторных попыток в SAML Spring Security?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...