shibsp::ConfigurationException, почему поставщик услуг не регистрирует дополнительную информацию?
Я настраиваюсь в тестовой среде с CentOS 7, SSO с Shibboleth SP и Shibboleth IDP. После всех настроек, если я попытаюсь получить доступ к защищенному источнику на сервере, появится только страница с ошибкой:
shibsp:: ConfigurationException в ( http://server_ip/secure/index.html)
Ни один из настроенных SessionInitiators не обработал запрос.
Я могу найти то же сообщение в журналах apache (/var/log/httpd/error_log), но в журналах shib_d (shibd_warm.log, shibd_d.log) ничего об этой ошибке нет. Есть ли какие-то разрешения, которые нужно установить? Или это правильное поведение?
Я думаю, что ошибка связана с файлами метаданных, но отсутствие логов сводит меня с ума....
PS: если я попытаюсь переопределить логин, посетив вручную страницу " http://server_ip/Shibboleth.sso/Login?entityID=my_idp_entity_id ", я смогу перейти на страницу входа, и файлы журналов будут правильно обновлены.
ОБНОВИТЬ:
Я настроил встроенную службу обнаружения Shibboleth (на данный момент только с одним IDP), и я успешно перешел на страницу входа iIDP после запроса защищенного ресурса, а также правильно обновил журналы. Это конфигурация, которую я буду использовать и развертывать, но почему я не могу войти в систему только с одним IDP? Вот различные теги единого входа в shibboleth2.xml One IDP:
<SSO entityId="my_idp_entity_id">
SAML2 SAML1
</SSO>
Служба открытия:
<SSO discoveryProtocol="SAMLDS" discoveryURL="http://ip_address/shibboleth-ds/index.html">
SAML2 SAML2
</SSO>
2 ответа
Мне удалось получить файл журнала, проблема заключалась в разрешениях на "shibd.log". Даже если он был создан службой shibd, владельцем этого файла был корень войны, и сообщалась только часть журнала.
Решено путем изменения пользователя / группы владельца файла
chown shibd /var/log/shibboleth/shibd.log
chgrp shibd /var/log/shibboleth/shibd.log
Настраивает SSO для IdP по умолчанию. Чтобы правильно разрешить более 1 поставщика удостоверений, удалите свойство entityID и настройте DiscoveryURL так, чтобы он указывал на службу обнаружения. Вы также можете переопределить entityID в строке запроса /Login или в RequestMap/htaccess.
В ИДП:
<SSO entityID="https://idp-test.website.org">
SAML2
</SSO>
В ВАЙФ:
<SSO Location="/Login"
discoveryProtocol="SAMLDS" discoveryURL="https://discovery.site.org/test">
SAML2
</SSO>