SAML2.0 SSO与WSO2身份服务器?

时间:2015-02-22 09:05:01

标签: java wso2 single-sign-on saml

我需要将WSO2身份服务器与SAML一起用于我的内部应用程序的SSO。我遇到了这个美丽的 SAML2.0 SSO with the WSO2 Identity Server article

但我对这篇文章有两个问题,我不确定它是如何运作的

1)在第5步中说“现在用户被重定向到IDP。现在IDP意识到这个用户已经过身份验证,因此会发出 SAML断言而不提示任何身份验证质询。“

IDP将如何识别用户已经过身份验证?

根据我的理解,必须根据会话进行。这是否意味着当身份验证请求从服务提供商1发送到身份服务器(SP1将请求重定向到IS到浏览器)时,IS将首先验证凭据,如果成功则将用户对象保持在会话中。

现在,当第二个身份验证请求进入IS到SP2时,会发送相同的会话ID(提供的请求是从同一个浏览器的另一个发送的),IS fins已经是与此会话关联的用户对象,所以请相信他。这种理解是否正确?

2)在步骤2中,据说“现在SP1可以验证IDP发出的SAML断言,并允许用户登录。” 什么是特定字段/值(在IP发送的SAML响应下),SP1将验证?

3)存储用户凭据的位置。是在IS方面还是服务提供方?

1 个答案:

答案 0 :(得分:4)

请解释它如何与WSO2IS 5.0.0一起使用

  1. 当用户通过提供凭据对IDP进行身份验证时。 WSO2IS为用户和cookie创建经过身份验证的会话,并与设置在用户浏览器中的经过身份验证的会话相关联。 Cookie名称为commonAuthId。一旦使用SSO对WSO2IS进行身份验证,您也可以在浏览器中找到它。然后,用户尝试使用相同的浏览器访问另一个SP,cookie将被发送到WSO2IS,并且它识别出存在与cookie相关的经过身份验证的会话。

  2. 通常,SP验证SAML2响应和断言。您可以执行几种验证。但最常见的是

    • SAML2响应和SAML2断言的签名

    • 有效期SAML2响应和SAML2断言。

    • SAML2断言中的受众限制验证

    • 目标网址和收件人值

  3. 通常,用户名将从主题标识符值中提取。此外,属性语句中可能还有属性,SP可以检索这些属性并对其进行一些验证。

    1. 最终用户通过IDP身份验证。因此凭证必须在IDP中,而不是SP。这是SSO的想法之一。在一个地方维护凭据。 WSO2IS默认随基于LDAP的用户存储一起提供。因此,最终用户凭据存储在LDAP服务器中。但是,WSO2IS可以与您喜欢的任何现有用户商店一起部署