问题描述
我将OpenAM用作托管SP,并且当用户过滤器设置为("SpecialAttribute"="TRUE")
时,需要评估远程IdP断言中一个属性的值,以便复制在LDAP身份验证链中看到的相同行为。该属性在断言中可用,我在SP / Assertion Processing / Attribute Mapper ,
现在我不知道该怎么办。至少这是正确的方向吗? 任何帮助都非常欢迎!
解决方法
根据您的描述,我怀疑您想实现以下几点:当SAML响应包含值为SpecialAttribute
的属性TRUE
时,SAML SSO流应该成功,并且值不同或属性不成立丢失,SAML SSO流应该失败。
鉴于这种怀疑,您需要创建一个SAML2 Service Provider Adapter实现,并在preSingleSignOnProcess
方法中检查SAML响应。如果属性不符合条件,则抛出适当的SAML2Exception