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