OpenSAML有什么意义?还有其他选择

时间:2016-01-30 10:47:33

标签: java saml saml-2.0 opensaml

我目前正致力于设置SAML IDP。 起初,我认为spring-security-saml会对我有所帮助,但我发现它只对设置SAML协议的SP方面有帮助。

所以我想:让我们去吧,让我们使用OpenSAML来实现它。

这就是问题:该库实际上做了什么? 我知道这是一个低级库,但我不知道它的重点。 我没有找到好的教程和文档,我觉得我刚买了一些没有螺丝和没有手册的宜家家具。

虽然,我看到很多有趣的东西,比如解码器(HTTPPostDecoder),它从HTTP请求中获取SAML对象,但我不知道是否应该根据IDP元数据手动检查此对象,或者是否OpenSAML可以自动检查它(我认为它不能)。

从那里开始,我在所有这些OpenSAML对象中丢失了,我不知道应该使用哪些以及我不需要使用哪些。

仅举例来说,我尝试从头开始生成元数据,但我没有找到任何可以直接使用的默认配置,而我最终只得到10行代码的一个XML标记,所以我不知道这个库的真正价值在哪里。

有人可以告诉我OpenSAML做什么和不做什么? 是否有一些良好的实践,帮助程序库可以包装它,实际上帮助我(或任何替代)或良好的教程,我还没有找到?我认为这肯定会有所作为,但我无法得到什么以及如何......

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

您可以阅读广告https://wiki.shibboleth.net/confluence/display/OpenSAML/Home

OpenSAML是一个处理低级SAML协议的库。它不是IdP。 IdP还必须为您提供身份验证,可能是用户配置文件管理。

有许多可用的SAMLv2 IdP,如Shibboleth,JBoss PicketLink,ForgeRock OpenAM,Ping Federate;有些是免费的,有些是商业性的