我正在尝试在反向代理后面安装 Shibboleth 服务提供商,该代理处理 SSL 卸载并将所有 /shibboleth/ URL 重定向到使用 Apache 托管 Shibboleth SP 的 VM。以下是一些 URL 示例:
site.domain.com > go to website
site.domain.com/shibboleth/protectedURL1 > go to Shibboleth SP, first protected path
site.domain.com/shibboleth/protectedURL2 > go to Shibboleth SP, second protected path
我shibboleth2.xml
发现所有处理程序 URL 都是相对的:
<Sessions lifetime="28800" timeout="3600" checkAddress="true"
handlerURL="/Shibboleth.sso" handlerSSL="false" ....
检查 SAML 调用后,我发现 Shibboleth URL 缺少 /shibboleth/ 部分:
https://site.domain.com/Shibboleth.sso/SAML2/POST
该链接确实不起作用,但如果我手动添加 /shibboleth/ :https://site.domain.com/shibboleth/Shibboleth.sso/SAML2/POST有用。
我可以在哪里配置 shibboleth URL,添加 /shibboleth/?
答案1
我必须修改shibboleth2.xmlhandlerURL
中Sessions
的部分内容,然后重新配置 Apache,将 /shibboleth/ 添加到所有位置。我在 Shibboleth 文档中找到了一条线索:https://wiki.shibboleth.net/confluence/display/SP3/Sessions#Sessions-AdvancedConfiguration
以下是我的最后Sessions
一部分:
<Sessions lifetime="28800" timeout="3600" checkAddress="false" handlerURL="/shibboleth/Shibboleth.sso" handlerSSL="false" exportLocation="/GetAssertion" idpHistory="false" idpHistoryDays="7">