Okta SAML IDP服务中是否有任何会话令牌可以重复用于从不同的应用

时间:2017-07-31 05:34:17

标签: single-sign-on saml saml-2.0 okta

在我们的案例中,我们有两个完全不同的网络应用程序在两个不同的域和平台上运行,例如app X(也充当SAML服务提供商)和应用程序Y.在应用程序X的登录页面中,用户可以选择Okta作为SAML SSO服务提供商,它将把他重定向到Okta进行凭证认证。然后,应用X将收到SAML响应以验证断言,并让用户登录到应用X.

现在在应用程序X中,已登录的用户可以单击指向应用程序Y的另一个链接。单击会触发对应用程序Y的HTTP GET请求以及包含令牌的HTTP参数(该令牌应该从Okta以及应用X或应用X收到的SAML Assertion可以通过Okta公开的其他API接收到Okta获取SAML断言后获取特殊令牌的任何请求。现在应用程序Y应该使用该令牌通过一些自定义的Okta API服务或SAML提供的任何其他机制(我不是肯定的)来验证Okta。

这可行吗?如果是的话,有人请指导我朝正确的方向发展。

1 个答案:

答案 0 :(得分:1)

听起来你要做的就是通过Okta“联合”两种不同的服务。 App X和App Y。

您希望能够通过Okta登录App X,然后从App X登录,点击App Y的链接并自动登录。

如果我正确理解了您的问题,那么答案就是可以使用Okta执行此操作。但不是你想的那样。

最简单的方法是让SAML启用App X和App Y,然后使用App Y的Okta“嵌入链接”作为App X中的链接(可能使用RelayState参数告诉App X用户希望登陆)

但是,根据App Y的实施方式,这个答案会变得更复杂。如果该应用程序不容易启用SAML,那么您将需要考虑使用OpenID Connect向该应用程序添加单点登录功能,然后使用类似于我上面描述的方法在应用程序之间进行链接。

最后,这是可能的,但这里使用的推荐方法是将App X和App Y连接到Okta并使用Okta为您“联合”应用程序。