使用SAML V2和Java的身份提供商实现

时间:2019-08-05 11:30:46

标签: single-sign-on saml-2.0 idp

成功实施 SAML-V2服务提供商(SP)后;为了支持某些特定用例,我必须实现自己的 SAML-2 IdP 。在经历过OASIS Documentation和许多其他有关SAML协议的知识之后,我已经开始实现它。

  • 我的用例只是一个仅包含Web Browser SSO Profile的配置文件(SP-Initiated SSO: Redirect Bindings)。

我正在寻找一些精益的第三方库或基于Java的实现,可以参考/使用它们来加快实现并在此之上进行自定义。

希望您对此方向的任何推荐或建议。

具体来说,我正在寻找以下任何/全部:

  • 易于使用开源库在Java中实现SAML-V2身份提供程序。
  • 上述配置文件的详细文档/规格。
  • 具有实施此类IdP经验的专家的任何建议。

有很多可用于SP的材料。但是,IdP很少而且很复杂。 我已经在寻找的一些基于Java的实现是:KeyCloakLite-IdP

2 个答案:

答案 0 :(得分:1)

“很少且很复杂”是正确的,因为构建真实世界的身份提供者是一个严肃的项目。 OpenSAML,因为该库是Java中最好的选择-我们知道的许多企业级实现都是使用该库构建的。关于如何在IdP上下文中使用OpenSAML的一个精简示例是https://github.com/OpenConext/Mujina

Lite IdP用Go编写。如果您愿意接受非Java选项,那么SimpleSAMLphp就是很好的选择,它的文档说明比其他很多都更好。

答案 1 :(得分:0)

我会将其发布为评论,但是我没有足够的声誉。 但是在这里,关于Spring SAML,您几乎有相同的问题: using-spring-saml-as-an-idp-rather-than-an-sp

看看弗拉基米尔的答案,我认为这就是您想要的。 Here is the link由他建议。

欢呼