服务提供商如何观察来自多个身份提供商的成功登录

时间:2015-10-08 08:57:26

标签: wso2 wso2is

我是WSO2 Identity Server和SSO的新手。 我的要求是围绕两个门户建立信任边界,每个门户都有自己的专用用户存储,身份和服务提供商。用户可以选择要对其进行身份验证的身份提供者,并自动与其他身份提供者进行身份验证。每个身份提供者可以拥有多个注册的租户。 我跟随: https://docs.wso2.com/display/IS500/Connecting+Two+Identity+Servers+with+SAML+SSO https://docs.wso2.com/display/IS500/Adding+a+Service+Provider+and+Identity+Provider+Using+Configuration+Files

WSO2 Identity Server实例#1: 对于门户1,我有一个配置的常驻身份提供者和外部身份提供者(WSO2 Identity Server实例#2)。它还具有为门户网站1中的应用程序配置的服务提供程序,并具有自定义用户存储管理器,使用门户网站1上的应用程序中的用户存储。它具有第二个服务提供程序,其参考WSO2 Identity Server实例#2进行配置。

WSO2 Identity Server实例#2: 对于门户2,我有一个配置的驻留身份提供者和外部身份提供者(WSO2 Identity Server实例#1)。它还具有为门户2中的应用程序配置的服务提供程序,并具有自定义用户存储管理器,使用门户2上的应用程序中的用户存储。它具有第二个服务提供程序,其参考WSO2 Identity Server实例#1进行配置。

我不明白门户网站2用户是否打开门户网站1并选择通过WSO2 Identity Server实例#2中的身份提供商进行身份验证,WSO2 Identity Server实例#1中的服务提供商如何能够 - 观察成功登录 - 确定成功登录源自哪个身份提供者 - 如何为通过外部身份提供商记录的用户添加身份验证cookie信息,以便用户也在此系统上进行身份验证。

有没有人知道这些问题的良好解决方案,还是可以指导我阅读好的阅读资源?

1 个答案:

答案 0 :(得分:0)

this帖子中详细描述了类似的情况。

在回答你的问题之前,我们先考虑基本的流程, “Portal#2用户尝试登录Portal#2”

如果您浏览blog,则会在步骤1,步骤2和步骤3中解释这种情况。

现在你的问题是, “如何访问门户#2用户,登录门户网站#1(因为门户网站#2用户知道他的领域并选择IS#2作为其IdP)”

从步骤#4到步骤#8描述的流程。

“我不明白门户网站2用户是否打开门户网站1并选择通过WSO2 Identity Server实例#2中的身份提供商进行身份验证”

当用户打开门户1时,它将重定向到IS 1,因为IS 1是门户1的可信任IdP。在重定向到IS 1后,用户可以决定是否要使用IS 1或IS 2登录(因为IS 2在IS 1中被称为IdP)。

“WSO2 Identity Server实例#1中的服务提供商如何 - 观察成功登录 - 确定成功登录源自哪个身份提供商”

IS 1可以知道用户的决定是什么,因为在IS 1中的用户做出决定,而不是在门户网站1 **中做出决定。

“如何为通过外部身份提供商记录的用户添加身份验证cookie信息,以便用户也在此系统上进行身份验证”

将在两个IdP中创建经过身份验证的会话。

我刚刚描述了您的问题,因为上述博客文章详细介绍了一个很好的用例。

**该决定也可以在门户1中获取,但是门户1仍然不会直接与IS 2通信。身份验证请求始终通过其自己的域的身份提供商。

HTH, DarRay