我有一个使用Netty 4.x框架的应用程序,它可以作为某种服务器。身份验证必须联合,因此现在我需要将其转换为SAML2.0服务提供程序。
我做了一些研究,我担心的是,为了使用现有的SAML2.0解决方案,即OpenAM,PingFederate,服务提供商必须是运行在某种Web容器中的Web应用程序,而不是在我的项目中的案例。这是真的吗?
我是单点登录和联盟世界的新手,我非常感谢所提供的任何信息和提示。
答案 0 :(得分:0)
SAML通常使用浏览器来保持一个共同的会话"在两个网站之间。
这样做如下:
发布到SAML身份提供商的表单会自动回发,并且返回的身份验证也是一个自动发布的表单。一个跨站点脚本的kinde。
SAML servlet过滤器可以接受此结果并将UserPrinciepal放入应用程序请求中。
配置并不太难。您的"服务器",
需要您自己的唯一密钥对总而言之,这是相当耗时的。它也有助于建立自己的身份提供商。 Apache Shiro是Java EE服务器世界之外的安全解决方案,在我使用SAML时没有SAML解决方案。
如果你有一个运行的演示IdP和SP,那么缩短所有内容应该不会太难。也许使用FireFox和TamperData插件来检查通信。