我对 SAML 和 WSO2 的理解非常基础,所以提前抱歉。我想知道是否可以将访问 SSO 服务限制为用户子集?
问问题
625 次
2 回答
3
是的,您可以将对 SAML SSO 服务提供商的访问限制为一部分用户。这确实是一个授权要求。当服务提供者将用户重定向到身份提供者(在本例中为 WSO2 身份服务器)时,服务提供者可以从身份服务器请求关于用户的声明(如角色、电子邮件、年龄、国家等声明)。然后,在身份提供者成功验证用户身份后,身份提供者会将这些声明值与 SAML 响应消息一起发送给 SSO 服务提供者。SSO 服务提供者可以读取这些声明,并可以决定是否应该让用户访问服务。(例如,通过查看角色声明,如果用户具有特定角色,则 SSO 服务提供者允许用户,如果不拒绝)
于 2012-08-24T16:04:50.210 回答
0
我认为根据 SAML 规范,身份提供者可以返回错误状态。它在 SAMLResponse 中有一个元素专用于此 -> 状态。但据我所知,WSO2 Identity Server(最高 5.0.0)不会自动支持这种行为。应该更改 WSO2 授权代码以实现此行为...
资料来源: SAML 2.0 概述- 第 1131 行,章节:3.2.2.2 元素
<samlp:Response
...<saml:Issuer>https://idp.example.org/SAML2</saml:Issuer>
<samlp:Status>
<samlp:StatusCode
**Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>**
</samlp:Status>
<saml:Assertion ...
代替 Success IdP 可以返回:urn:oasis:names:tc:SAML:2.0:status:AuthnFailed 或类似...请参阅: SAML2.0 处理 SSO 错误
于 2014-12-08T13:12:09.873 回答