考虑您拥有WSO2 IS(5.3.0)和上游IDP(例如SAML IDP)的情况。
登录程序如下:用户访问重定向到本地WSO2 IS的服务提供商(例如OpenID Connect客户端)。 SP配置为使用上游SAML IDP或本地登录作为出站身份验证选项。 上游SAML IDP在断言中返回一些属性,但未配置JiT配置。
现在使用服务提供商从登录过程获取的访问令牌
这是配置问题吗?有办法解决这种问题吗?
使用userinfo端点更糟糕的是,返回的声明取决于用户是通过本地登录(在WSO2 IS中)还是通过上游外部IDP登录。 SOAP令牌验证端点不是这种情况,它在两种情况下都返回相同的属性。
答案 0 :(得分:0)
我对此进行了更多调查。看起来SOAP令牌验证端点使用直接访问用户存储(例如LDAP)的声明检索器,而userinfo端点从缓存中获取配置文件属性。缓存条目在身份验证时生成,并使用SAML断言中的信息填充。
解决方法可能是为IDP启用JiT配置。不幸的是,只要在IDN_ASSOCIATED_ID中没有维护帐户关联,就仍然存在不匹配。
IMO应自动创建帐户关联,以防用户进行jit配置。不确定这是一个bug还是每个设计。至少可以选择解决这个问题。