使用 SAML (SSO) 实现 Web 服务安全性 - 如何实现?

问题

我想实现一组受 SAML 保护的 Web 服务。我需要对用户进行身份验证,并且还需要根据用户角色进行授权。我发现了一些与此类似的问题,但没有一个得到满意的答案。

场景

  • Java Webapp仅使用Webservices访问;
  • 肥皂 - 地铁;
  • 客户端使用他们将开发的一些桌面应用程序。

我需要的主要功能

  • 自由软件;
  • SAML 2.0;
  • LDAP(或类似解决方案)来管理用户信息;
  • 消息级安全性 (SOAP)。

问题:

我研究一些SAML(SSO)解决方案(例如Shibboleth,opemAM,JOSSO...);

  • 我可以在不影响任何关键功能的情况下使用其中任何一个吗?
  • 或者,我是否需要实现自己的方法来处理 SAML 令牌?
  • 怎么办?

谢谢!



以下是我发现的一些结果,和/或答案中的一些提示:

仍在搜索,请贡献!!


答案 1

我是WSO2的建筑师。WSO2 生成支持您需要的所有功能的 WSO2 标识服务器。您可以在现有 LDAP 用户存储上部署 WSO2 身份服务器,并使其充当 SAML2 IdP。我们在平台即服务 [PASS] 产品/服务中使用了身份服务器的此功能 - https://stratoslive.wso2.com SAML2 单点登录。

这是一个很好的起点,您可以从此处下载 WSO2 标识服务器。


答案 2

因为没有人用有效的选项回答。我决定使用metro SAML来保护服务,并尝试使用OpenAM提供令牌。


推荐