持续存在 SAML 表单数据重复键问题



我正在尝试在 SustainSys 存根 IDP 页面上提交表单数据,作为自动化测试套件的一部分,该套件在不涉及浏览器的情况下模拟 SAML 登录。

我正在提交表单数据 POST 请求,但表单数据中似乎未提交表单所需的重复键。 请求如下所示:

request({
method: 'POST',
url: 'https://stubidp.sustainsys.com/{id}',
form: true,
body: {
"AssertionModel.AttributeStatements.Index": "0",
"AssertionModel.AttributeStatements[0].Type": "urn:oid:2.5.4.10",
"AssertionModel.AttributeStatements[0].Value": "Test 123",
"AssertionModel.AttributeStatements.Index": "1",
"AssertionModel.AttributeStatements[1].Type": "https://some-url.com",
"AssertionModel.AttributeStatements[1].Value": "001",
"AssertionModel.AttributeStatements.Index": "2",
"AssertionModel.AttributeStatements[2].Type": "https://some-url.com",
"AssertionModel.AttributeStatements[2].Value": "Open",
"AssertionModel.AttributeStatements.Index": "16",
"AssertionModel.AttributeStatements[16].Type": "urn:oid:2.5.4.4",
"AssertionModel.AttributeStatements[16].Value": 'Admin-Smith'
}
})

问题出在"AssertionModel.AttributeStatements.Index"属性上,因为我用于请求的 JS 库只发送了最后一个值为16的属性。因此,返回的 SAML 响应不正确。如何发送这些属性,以便端点正确解析它们?

看起来实际上不需要"AssertionModel.AttributeStatements.Index"属性。 没有这些,请求就可以工作。

相关内容

  • 没有找到相关文章

最新更新