Spring saml,第二个本地 SP - 实体别名和上下文提供者

Posted

技术标签:

【中文标题】Spring saml,第二个本地 SP - 实体别名和上下文提供者【英文标题】:Spring saml, second local SP - entity alias and context provider 【发布时间】:2014-11-26 04:31:06 【问题描述】:

我的系统带有两个负载均衡器,为不同的网络公开应用程序。

在应用程序中,spring-saml 扩展用于通过 IdP 进行身份验证(从两个网络都可见)。 对于第一个位置,一切都按预期工作 - 默认 SP 与 entityId=exampleSP1。

当我配置第二个 SP 元数据(具有不同 entityId=exampleSP2 的本地)并使用 /saml/login/alias/exampleSP2 调用它时 应用程序收到来自 IdP 的成功响应,但在 SAMLCredential 验证期间抛出异常: “SAML 消息预期目标端点与接收端点不匹配”

当使用第二个 SP 目标端点与 contextProviderLB 中配置的不同时发生异常。

定义分离的contextProviderLB的方法是否取决于使用哪个SP(或初始URL)?

【问题讨论】:

【参考方案1】:

您在https://jira.spring.io/browse/SES-150 中遇到了一个问题,该问题现已在主干中修复。请更新您的 Spring SAML。感谢您在 Jira 中留下您的评论。

【讨论】:

是的,你有部分权利(我对此问题有评论)。但这并不能解决我的问题。我通过配置所有 saml bean 的单独集合来解决它 - 具有不同的元数据和 loadBalancerContex。此外,我必须定义自己的身份验证提供程序,该提供程序在使用适当 entityId 定义的两个之间切换。

以上是关于Spring saml,第二个本地 SP - 实体别名和上下文提供者的主要内容,如果未能解决你的问题,请参考以下文章

Spring SAML - 支持自定义 SAML 断言

Spring SAML 2.0 - 导入 IDP 的本地元数据 - MetadataProviderException

在反向代理后面使用 SP 时出现 Spring saml 问题

Spring security Saml - SP 和 IDP 的时间差

使用 Grails Spring Security Saml 插件

生成 SP 元数据时出现意外的堆栈跟踪表单 Spring-Security-SAML?