gpt4 book ai didi

spring - 在 Spring Security SAML 身份验证请求中配置 POST ProtocolBinding

转载 作者:行者123 更新时间:2023-12-04 17:37:33 25 4
gpt4 key购买 nike

Spring Security SAML 坚持在 SAML 认证请求中请求 Artifact 绑定(bind)(ProtocolBinding 属性):

<saml2p:AuthnRequest xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"
AssertionConsumerServiceURL="http://sp.com/saml/SSO/alias/defaultAlias"
Destination="https://idp.com/idp"
ForceAuthn="false"
ID="a4acj06d42fdc0d3494h859g3f7005c"
IsPassive="false"
IssueInstant="2012-12-05T17:07:18.271Z"
ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact"
Version="2.0"
>

如何配置 POST 绑定(bind)?
感谢您的任何回答!

——安德烈亚斯

最佳答案

感谢 nobby 和 Sanjeev,我最近将这个应用到了一个类似的案例中,它让我走上了正确的轨道。

作为 Spring Security SAML2 扩展的新手,我不得不做一些额外的挖掘工作才能应用 WebSSOProfileOptions。基本上要在 SAML 身份验证请求上获得 HTTP-POST 绑定(bind),您需要将配置文件选项传递给 org.springframework.security.saml.websso.WebSSOProfileImpl#sendAuthenticationRequest()方法。

对于我们的配置,它与 config in the Spring RC2 sample project 非常相似,这意味着通过 WebSSOProfileOptions Sanjeev 对 samlEntryPoint.defaultProfileOptions 的解决方案中描述的 bean属性(或在那里添加绑定(bind)属性)。

麻烦的是,这并没有导致 AuthnRequest 获取设置的绑定(bind)属性。在我们的例子中,我们的 SAML 元数据指定了 isDefault=true在 HTTP-Artifact 绑定(bind) AssertionConsumerService .在我们的 RC2 版本的 Spring Security SAML2 库中,这是 org.springframework.security.saml.metadata.MetadataGenerator 的默认行为。 .

这可以通过设置 assertionConsumerIndex 来覆盖。 MetadataGenerator 的属性。在我们的例子中,HTTP Post 断言消费者在索引 1 处配置。

<bean id="metadataGeneratorFilter" class="org.springframework.security.saml.metadata.MetadataGeneratorFilter">
<constructor-arg>
<bean class="org.springframework.security.saml.metadata.MetadataGenerator">
<property name="assertionConsumerIndex" value="1" /><!-- 1=HTTP-POST -->
</bean>
</constructor-arg>
</bean>

关于spring - 在 Spring Security SAML 身份验证请求中配置 POST ProtocolBinding,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13728623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com