首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建SAML IDP

构建SAML IDP
EN

Stack Overflow用户
提问于 2020-03-30 09:24:09
回答 2查看 1.6K关注 0票数 3

我们计划建立我们自己的SAML国内流离失所者。我有几个问题:

  1. 建造一个有意义吗?
  2. 如果是的话,有什么办法?我没有看到任何用于SAML的Java库。不能使用security,因为它支持集成第三方IDP,而不是构建第三方IDP。
EN

回答 2

Stack Overflow用户

发布于 2020-03-30 09:43:13

作为一个从头开始构建SAML IdP的人来说,用Java构建一个IdP主要涉及以下几个方面:

  1. 监听SAML请求的服务器应用程序,通常位于端口443上。你可以用弹簧靴来做这个。
  2. 向IdP管理的用户显示身份验证页的服务器代码。LDAP是一种常用的用户身份验证方法。
  3. 用于提取身份验证用户属性的服务器代码。这可能是一个LDAP查找,以查找attribtes,如名、姓、电子邮件等。
  4. 服务器代码,以决定哪些属性可以发布到请求的SP。为此,您将使用SP的entityID
  5. 服务器代码将用户属性(例如从LDAP)转换为SAML属性并发送到SP。

1和4需要解析和创建SAML。您可以使用openSAML实现这些功能。5需要SP可能理解的SAML属性模式。为此您可以使用eduPerson

使用SAML和SP需要了解和实现各种SAML配置文件。Web浏览器SSO是一种常用的单点登录。您可以阅读有关概要文件这里

一旦您了解了SAML以及它在流程中的位置,您就需要使用PKI理解/实现XMLSignature和各种加密主题。

一旦您有了经过测试的有效IdP实现,您就需要能够解析SAML元数据(PDF)来使用SP的公钥证书和元数据中的其他各种urls来验证SP。您还需要更新SP元数据,并创建要发送到SP的IdP元数据,这样它就可以验证您将要签名的SAML Response

如果ROI不值得开发,您可以使用“标准”IdP

票数 4
EN

Stack Overflow用户

发布于 2020-03-30 19:30:03

有一个SAML 这里的列表。

有一个SAML栈的列表,这里

要添加@codebrane答案,您是否计划支持启动的SP和IDP?

但是一般来说,不要。使用现成的产品,或者至少使用一个可靠的SAML堆栈库。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60927498

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档