Это код респондента из IdP, который в настоящее время настроен на , а не , поддерживающих поставщиков услуг, указывающих параметр AuthnContext в SAML AuthnRequest.
У вас есть settings.authn_context = ""
, указанный в файле config/initializers/devise.rb
? Или вы указываете urn:oasis:names:tc:SAML:2.0:ac:classes:Password
.
Сказать, что Shibboleth использует этот AuthnContext, является грубым преувеличением. Shibboleth поддерживает многие контекстные классы, включая пользовательские классы для таких вещей, как многофакторная аутентификация. urn:oasis:names:tc:SAML:2.0:ac:classes:Password
только один из многих, которые поддерживаются Shibboleth. Какие потоки Authn разрешены администратором IdP, это другая история. Возможно, это единственный поток, который они настроили и, следовательно, поток по умолчанию.
Я бы попытался отправить AuthnRequest с пустым AuthnContext, потому что похоже, что этот конкретный IdP был настроен на отключение возможности SP указать это.
В Shib IdP 3+ это можно сделать, указав p:disallowedFeatures-ref="SAML2.SSO.FEATURE_AUTHNCONTEXT"
либо для проверяющей стороны по умолчанию, либо для конкретного RelyingPartyOverride для вашего SP. Вы можете спросить администратора IdP и спросить, указывают ли они это свойство в компоненте SAML2.SSO
?