Websphere SAML-TAI类ACSTrustAssociationInterceptor的位置和逻辑

Websphere SAML-TAI类ACSTrustAssociationInterceptor的位置和逻辑,websphere,single-sign-on,saml,saml-2.0,Websphere,Single Sign On,Saml,Saml 2.0,在WebSphereSAMLSO中,我们将“com.ibm.ws.security.web.SAML.ACSTrustAssociationInterceptor”配置为TAI类 根据我对TAI课程的理解, 步骤1)SAML TAI从SAML响应推断用户名。并对SP应用程序声明相同的内容。假设它断言了用户“kaushik”,而该用户实际上并不存在于应用程序中。 步骤2)SP应用程序然后检查SP应用程序中是否存在用户 步骤3)如果应用程序中不存在用户,我们将重定向到错误页面(配置为sso_1.sp

在WebSphereSAMLSO中,我们将“com.ibm.ws.security.web.SAML.ACSTrustAssociationInterceptor”配置为TAI类

根据我对TAI课程的理解, 步骤1)SAML TAI从SAML响应推断用户名。并对SP应用程序声明相同的内容。假设它断言了用户“kaushik”,而该用户实际上并不存在于应用程序中。 步骤2)SP应用程序然后检查SP应用程序中是否存在用户 步骤3)如果应用程序中不存在用户,我们将重定向到错误页面(配置为sso_1.sp.acsErrorPage)

现在我的问题是: 1) 我的理解正确吗? 2) 如果它是正确的,当SP没有所需的用户时,控制如何返回到TAI类? 3) 包含“com.ibm.ws.security.web.saml.ACSTrustAssociationInterceptor”的jar是什么?
4) jar在WAS AppServer中的位置是什么。我到处都找不到

你的理解不完全正确。在步骤1中,SAML TAI确实从SAML响应推断用户名。它以用户确定的方式执行此操作。第二步是我相信你开始迷路的地方。这里的“应用”一词太笼统了。如果将
idMap
自定义属性配置为
localRealm
,SAML TAI将检查为现有用户的安全域配置的WAS注册表。否则,假设是
idAssertion
,它创建一个临时用户,该用户存在于JAAS主题中,但不存在于注册表中


我不记得哪个应用程序库包含SAML TAI代码。使用SAML TAI不需要此知识。如果您打算反向编译SAML TAI代码以澄清您的理解,我想鼓励您首先学习一种介绍WAS常见基于web的SSO场景的方法。它描述了如何配置SAML TAI自定义属性以执行各种用例。本文还讨论了SAML TAI如何利用新的通用TAI功能,使其能够在多个阶段与安全模型挂钩。

明白了。SAML TAI是一个注册中心。你知道这样做的代码/逻辑吗?我需要在我想要检查WAS注册表中是否存在用户的自定义类中创建一个自定义TAI类(与SAML无关)。该接口非常有用。获取一个实现的示例如清单4所示。