Spring SAML一次性使用条件
Spring SAML one time use condition
我正在尝试使用 spring 安全 saml 连接到自定义 cas 4 实现。 Spring lib 抛出异常,因为断言条件是一次性使用。我将其注释掉扩展基础 class 并且我让它工作了。我想知道为什么图书馆有这样的限制。
谢谢你的帮助。
在 class class WebSSOProfileConsumerImpl 的方法 verifyAssertionConditions 中更具体,有以下代码:
else if (conditionQName.equals(OneTimeUse.DEFAULT_ELEMENT_NAME)) {
throw new SAMLException("System cannot honor OneTimeUse condition of the Assertion for WebSSO");
}
Spring SAML 在其整个有效期内使用收到的 Assertion
并且不能强制请求一个可能具有不同值(例如访问角色)的新的 - 这是我对意图的理解OneTimeUse
此上下文中的条件(详细信息在 SAML 2 core 中)。因此 Spring SAML 拒绝设置了此条件的 SAML 响应。
您可以通过覆盖 WebSSOProfileConsumerImpl
中的 verifyAssertionConditions
来更改行为,过滤掉条件并用剩余的条件调用 super。
我正在尝试使用 spring 安全 saml 连接到自定义 cas 4 实现。 Spring lib 抛出异常,因为断言条件是一次性使用。我将其注释掉扩展基础 class 并且我让它工作了。我想知道为什么图书馆有这样的限制。 谢谢你的帮助。 在 class class WebSSOProfileConsumerImpl 的方法 verifyAssertionConditions 中更具体,有以下代码:
else if (conditionQName.equals(OneTimeUse.DEFAULT_ELEMENT_NAME)) {
throw new SAMLException("System cannot honor OneTimeUse condition of the Assertion for WebSSO");
}
Spring SAML 在其整个有效期内使用收到的 Assertion
并且不能强制请求一个可能具有不同值(例如访问角色)的新的 - 这是我对意图的理解OneTimeUse
此上下文中的条件(详细信息在 SAML 2 core 中)。因此 Spring SAML 拒绝设置了此条件的 SAML 响应。
您可以通过覆盖 WebSSOProfileConsumerImpl
中的 verifyAssertionConditions
来更改行为,过滤掉条件并用剩余的条件调用 super。