Java中SAML2的SSO身份验证以及如何使用HtmlUnit执行JavaScript

Java中SAML2的SSO身份验证以及如何使用HtmlUnit执行JavaScript,java,authentication,single-sign-on,kerberos,htmlunit,Java,Authentication,Single Sign On,Kerberos,Htmlunit,在我的一项开发中(使用kerberos身份验证和HtmlUnit对LoginLong进行验证),它在所有情况下都可以正常工作,在点击SAML2使用的SSO身份验证链接后,它会遇到一个问题 我一直在搜索,没有合适的解释来获取有关SSO安全页面的SAML2身份验证的更多信息 我对SSO身份验证和SAML2身份验证完全陌生,是否有单独的API?请帮助我了解更多关于这方面的信息 请您提供帮助或建议,传递用户/密码以获得身份验证的最佳流程是什么 谢谢身份验证本身不是SAMLv2规范的一部分。SAMLv2定

在我的一项开发中(使用kerberos身份验证和HtmlUnit对LoginLong进行验证),它在所有情况下都可以正常工作,在点击SAML2使用的SSO身份验证链接后,它会遇到一个问题

我一直在搜索,没有合适的解释来获取有关SSO安全页面的SAML2身份验证的更多信息

我对SSO身份验证和SAML2身份验证完全陌生,是否有单独的API?请帮助我了解更多关于这方面的信息

请您提供帮助或建议,传递用户/密码以获得身份验证的最佳流程是什么


谢谢

身份验证本身不是SAMLv2规范的一部分。SAMLv2定义了关于经过身份验证的主体的信息交换。身份验证发生在SAMLv2 IdP上。具体情况如何取决于IdP。 在您的情况下,可能会出现以下情况。。。 使用HTTP POST将凭据发送到IdP的登录URL。捕获IdP返回的会话cookie。将HTTP请求发送到IdP的端点,该端点允许所谓的IdP启动SSO,并指定“HTTP重定向绑定”和SP的元别名(从SAML的角度来看,这是启用SSO的应用程序)。IdP将返回302,在重定向之后,SP应使用作为查询参数包含的SAML断言,并且您应该能够访问启用SSO的应用程序


您可以阅读SAMLv2技术概述()了解一些情况。

感谢您的更新,我们已经在为此进行身份验证,尽管我明白您的意思:我们必须将相同的凭据发布到IdP URL。到目前为止,我们都是通过使用HtmlUnit Ex来完成这一切的:在使用此代码(HtmlPage=webclient.getPage(“https://www.aby.com/xyz")然后这会重定向到IdP URL,我m在打印时得到相同的页面,因为现在由于IdP允许向前移动,您可以与上面的场景共享一些示例代码吗?在验证开始打印“page.asXML”之后,我们知道响应带有“”标记,在完整的页面中,我们可以看到只有一个函数请求发布。我们正在使用WebClient点击“https:/xyz.com”URL,该URL具有SSO身份验证,因此它会重定向到idp。当我们打印页面时,它会显示idp重定向页面,而不是实际页面。之后,我们想用HtmlUnit执行脚本,但它不允许获得正确的你能帮我在HtmlUnit中执行Javascript吗