我目前正在设置SAML IDP.
起初,我以为spring-security-saml会对我有所帮助,但是我发现它仅对设置SAML协议的SP端有所帮助.
所以我想:走吧,让我们使用OpenSAML做到这一点.
问题来了:该库实际上是做什么的?
我知道这是一个低级库,但我不明白它的意义是什么.
我找不到很好的教程或文档,我觉得我只是在买宜家家具而没有螺丝和手册.
尽管我看到了很多有趣的东西,例如解码器(HTTPPostDecoder),它们从HTTP请求中为我获取了SAML对象,但我不知道a是否应根据IDP元数据手动检查该对象,或者OpenSAML是否可以自动检查它(我认为它不能).
从那里开始,我迷失在所有这些OpenSAML对象中,我不知道应该使用哪些对象,不必使用哪些对象.
举例来说,我尝试从头开始生成元数据,但是我没有找到任何可以立即使用的默认配置,最后只得到一个XML标签用于10行代码,所以我没有得到这个库的真正价值是什么?
有人可以启发我有关OpenSAML做什么和不做什么?
是否有一些好的做法,可以包装它并实际上帮助我(或任何替代方法)的帮助程序库,或者我还没有找到的好的教程?我认为这肯定可以做些什么,但是我什么也做不到.
预先感谢您的帮助!
解决方法:
正如您可以阅读的广告https://wiki.shibboleth.net/confluence/display/OpenSAML/Home
OpenSAML是一个用于处理低级SAML协议内容的库.这不是IdP. IdP还必须为您提供身份验证和潜在的用户配置文件管理手段.
有许多SAMLv2 IdP可用,例如Shibboleth,JBoss PicketLink,ForgeRock OpenAM,Ping Federate.有些是免费的,有些是商业的