【发布时间】:2011-09-12 15:41:49
【问题描述】:
问题:
我想实现一组 Webservices,用 SAML 保护。我需要对用户进行身份验证,还需要根据用户角色授权。 我发现了一些与此类似的问题,但没有一个令人满意的答案。
场景:
- 仅使用 Web 服务访问的 Java Webapp;
- SOAP - 地铁;
- 客户使用他们将开发的一些桌面应用程序。
我需要的主要功能:
- 免费软件;
- SAML 2.0;
- LDAP(或类似解决方案)来管理用户信息;
- 消息级安全性 (SOAP)。
问题:
我研究了一些 SAML (SSO) 解决方案(例如 Shibboleth、opemAM、JOSSO...);
- 我可以在不影响任何关键功能的情况下使用其中任何一个吗?
- 或者我是否需要实现自己的方式来处理 SAML 令牌?
- 怎么做?
谢谢!
以下是我找到的一些结果,和/或答案中的一些提示:
-
Shibboleth:
http://shibboleth.1660669.n2.nabble.com/Web-Service-End-to-End-Security-td5526934.html
Shiboleth 不做端到端,只是点对点。http://www.predic8.com/shibboleth-web-services-sso-en.htm
在 SP 之前需要一个代理模块进行身份验证。
-
OpenAM:
-
https://wikis.forgerock.org/confluence/display/openam/Web+Services
不提供服务提供商 (SP)。定义基于客户端-服务器的架构,客户端在使用 Web 方法进行身份验证时显式请求令牌。
-
https://wikis.forgerock.org/confluence/display/openam/Web+Services
-
WSO2:
-
http://wso2.org/library/articles/2010/07/saml2-web-browser-based-sso-wso2-identity-server
不提供 SP,需要使用 OpenSAML 实现。
-
http://wso2.org/library/articles/2010/07/saml2-web-browser-based-sso-wso2-identity-server
仍在搜索,请贡献!
【问题讨论】:
-
如果您希望自己实现 SAML。有关该标准的一些非常好的文档,请参阅此链接。 stackoverflow.com/questions/12367378/…
标签: java web-services jax-ws single-sign-on saml