我目前正致力于设置SAML IDP。 起初,我认为spring-security-saml会对我有所帮助,但我发现它只对设置SAML协议的SP方面有帮助。
所以我想:让我们去吧,让我们使用OpenSAML来实现它。
这就是问题:该库实际上做了什么? 我知道这是一个低级库,但我不知道它的重点。 我没有找到好的教程和文档,我觉得我刚买了一些没有螺丝和没有手册的宜家家具。
虽然,我看到很多有趣的东西,比如解码器(HTTPPostDecoder),它从HTTP请求中获取SAML对象,但我不知道是否应该根据IDP元数据手动检查此对象,或者是否OpenSAML可以自动检查它(我认为它不能)。
从那里开始,我在所有这些OpenSAML对象中丢失了,我不知道应该使用哪些以及我不需要使用哪些。
仅举例来说,我尝试从头开始生成元数据,但我没有找到任何可以直接使用的默认配置,而我最终只得到10行代码的一个XML标记,所以我不知道这个库的真正价值在哪里。
有人可以告诉我OpenSAML做什么和不做什么? 是否有一些良好的实践,帮助程序库可以包装它,实际上帮助我(或任何替代)或良好的教程,我还没有找到?我认为这肯定会有所作为,但我无法得到什么以及如何......
提前感谢您的帮助!
答案 0 :(得分:3)
您可以阅读广告https://wiki.shibboleth.net/confluence/display/OpenSAML/Home
OpenSAML是一个处理低级SAML协议的库。它不是IdP。 IdP还必须为您提供身份验证,可能是用户配置文件管理。
有许多可用的SAMLv2 IdP,如Shibboleth,JBoss PicketLink,ForgeRock OpenAM,Ping Federate;有些是免费的,有些是商业性的