SAML2 在表单中提交 XML SAMLRequest 值
SAML2 Submitting XML SAMLRequest value in a form
我正在尝试使用 SAML
验证用户登录。我有一个简单的 HTML
表格。
<form method="post" action="https://abcd/login">
<input type="hidden" name="SAMLRequest" value="request" />
<input type="hidden" name="RelayState" value="token" />
<input type="submit" value="Submit" />
</form>
我对如何仅使用 javascript
将 XML
的 base64
编码发送到 SAMLRequest
感到困惑。如果有人能指出正确的方向或 link 演示,那将是一个巨大的帮助。
这取决于您使用的是什么 SAML2 配置文件。假设您使用的是 Web 浏览器 SSO (WBSSO),这一切都是通过 POSTing 自动将浏览器发送到 URLs 来完成的。用户访问您的应用程序,您创建 SAMLRequest 和 RelayState 并自动 POST 将表单发送给 IdP。 IdP 对用户进行身份验证(您不关心这部分),然后使用包含身份验证信息和属性的 base64 SAMLReponse 自动将浏览器重定向回您的断言消费者服务 (ACS) URL。这里有一个 SP 启动过程的简单概述 here。
这是我的做法:
<html>
<body Onload="document.forms[0].submit()">
<form method="POST" action="<%= request.getAttribute("wbsso_endpoint") %>">
<input type="hidden" name="SAMLRequest" value="<%= request.getAttribute("SAMLRequest") %>">
<% if (request.getAttribute("RelayState") != null) { %>
<input type="hidden" name="RelayState" value="<%= request.getAttribute("RelayState") %>">
<% } %>
</form>
</body>
</html>
我正在尝试使用 SAML
验证用户登录。我有一个简单的 HTML
表格。
<form method="post" action="https://abcd/login">
<input type="hidden" name="SAMLRequest" value="request" />
<input type="hidden" name="RelayState" value="token" />
<input type="submit" value="Submit" />
</form>
我对如何仅使用 javascript
将 XML
的 base64
编码发送到 SAMLRequest
感到困惑。如果有人能指出正确的方向或 link 演示,那将是一个巨大的帮助。
这取决于您使用的是什么 SAML2 配置文件。假设您使用的是 Web 浏览器 SSO (WBSSO),这一切都是通过 POSTing 自动将浏览器发送到 URLs 来完成的。用户访问您的应用程序,您创建 SAMLRequest 和 RelayState 并自动 POST 将表单发送给 IdP。 IdP 对用户进行身份验证(您不关心这部分),然后使用包含身份验证信息和属性的 base64 SAMLReponse 自动将浏览器重定向回您的断言消费者服务 (ACS) URL。这里有一个 SP 启动过程的简单概述 here。
这是我的做法:
<html>
<body Onload="document.forms[0].submit()">
<form method="POST" action="<%= request.getAttribute("wbsso_endpoint") %>">
<input type="hidden" name="SAMLRequest" value="<%= request.getAttribute("SAMLRequest") %>">
<% if (request.getAttribute("RelayState") != null) { %>
<input type="hidden" name="RelayState" value="<%= request.getAttribute("RelayState") %>">
<% } %>
</form>
</body>
</html>