需要在 jmeter 中将 " & < 转换为 ", &, <
Need to convert " & < to ", & , < in jmeter
我试图绕过 ADFS 身份验证,当我登录到应用程序时,我从服务器收到以下响应:
name="wresult" value="<t:RequestSecurityTokenResponse
xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust"><t:Lifetime><wsu:Created
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-10T09:28:07.059Z</wsu:Created><wsu:Expires xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-10T10:28:07.059Z</wsu:Expires></t:Lifetime><wsp:AppliesTo xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"><wsa:EndpointReference
xmlns:wsa="http://www.w3.org/2005/08/addressing"><wsa:Address>https://gh-prem.accesscontrol.windows.net/</wsa:Address></wsa:EndpointReference></wsp:AppliesTo><t:RequestedSecurityToken><saml:Assertion
MajorVersion="1" MinorVersion="1"> AssertionID="_cb580c90-d0ac-49a8-a9c4-3ecb8b0a54d1"
Issuer="http://abc.abc.dev.comt/adfs/services/trust"
IssueInstant="2017-02-10T09:28:07.075Z"
xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion"><saml:Conditions NotBefore="2017-02-10T09:28:07.059Z"
NotOnOrAfter="2017-02-10T10:28:07.059Z"><saml:AudienceRestrictionCondition><saml:Audience>https://gh-prem.accesscontrol.windows.net/</saml:Audience></saml:AudienceRestrictionCondition></saml:Conditions><saml:AttributeStatement><saml:Subject><saml:SubjectConfirmation><saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod></saml:SubjectConfirmation></saml:Subject><saml:Attribute
AttributeName="name"
如何在jmeter中转换"和<。由于下一个采样器的 POST 主体采用以下属性:
<t:RequestSecurityTokenResponse
xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust"><t:Lifetime><wsu:Created
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-06T10:06:14.384Z</wsu:Created><wsu:Expires
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-06T11:06:14.384Z</wsu:Expires></t:Lifetime><wsp:AppliesTo
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"><wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing"><wsa:Address>https://gh-prem.accesscontrol.windows.net/</wsa:Address></wsa:EndpointReference></wsp:AppliesTo><t:RequestedSecurityToken><saml:Assertion
MajorVersion="1" MinorVersion="1"
AssertionID="_99273d06-e73c-4ce5-acf5-6ba43c8c7990"
Issuer="http://xxx.xxx-dev.comt/adfs/services/trust"
IssueInstant="2017-02-06T10:06:14.400Z"
xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion"><saml:Conditions
NotBefore="2017-02-06T10:06:14.384Z"
NotOnOrAfter="2017-02-06T11:06:14.384Z"><saml:AudienceRestrictionCondition><saml:Audience>https://gh-prem.accesscontrol.windows.net/</saml:Audience></saml:AudienceRestrictionCondition></saml:Conditions><saml:AttributeStatement><saml:Subject><saml:SubjectConfirmation><saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod></saml:SubjectConfirmation></saml:Subject><saml:Attribute
AttributeName="name"
AttributeNamespace="http://schemas.xmlsoap.org/ws/2005/05/identity/claims"><saml:AttributeValue>
你能帮我用一些截图来解决这个问题吗
我得到了一些关于如何使用 Beanshell 预处理器的提示,但它对我没有帮助,或者我不确定如何实施 beanshell 来缓解这个问题。
注意:我使用的内容编码为 utf-8
看看__unescapeHtml() function,它可以解码HTML-encoded个字符串on-the-fly
您可以直接在 HTTP Request 采样器主体或其他任何地方使用此功能。
有关 JMeter 函数、如何使用它们、有什么限制等的更多信息,请参阅 How to Use JMeter Functions 系列帖子。
这就是我为缓解该问题所做的工作。希望对新手有所帮助(非常感谢 Dmitri Tikhanski)
以上令牌是作为对 GET 方法的响应而生成的 SAML 1.1 令牌。如果您使用 ADFS 身份验证,您将获得一个很大的 HTML,其中您将拥有 - WA、Wresult、Wctx。 (对我来说只有 wresult(SAML 1.1 token) 是相关候选者)
使用 RegularExpression Extractor 提取结果如下。
enter image description here
并且捕获的结果将在 /v2/wsfederation 中替换为函数 __unescapeHtml。
enter image description here
注意:1) Wa 结果在我的案例中不是动态的
2) wctx 字符串是一个静态字符串。
希望这对您有所帮助。谢谢。
我试图绕过 ADFS 身份验证,当我登录到应用程序时,我从服务器收到以下响应:
name="wresult" value="<t:RequestSecurityTokenResponse
xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust"><t:Lifetime><wsu:Created
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-10T09:28:07.059Z</wsu:Created><wsu:Expires xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-10T10:28:07.059Z</wsu:Expires></t:Lifetime><wsp:AppliesTo xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"><wsa:EndpointReference
xmlns:wsa="http://www.w3.org/2005/08/addressing"><wsa:Address>https://gh-prem.accesscontrol.windows.net/</wsa:Address></wsa:EndpointReference></wsp:AppliesTo><t:RequestedSecurityToken><saml:Assertion
MajorVersion="1" MinorVersion="1"> AssertionID="_cb580c90-d0ac-49a8-a9c4-3ecb8b0a54d1"
Issuer="http://abc.abc.dev.comt/adfs/services/trust"
IssueInstant="2017-02-10T09:28:07.075Z"
xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion"><saml:Conditions NotBefore="2017-02-10T09:28:07.059Z"
NotOnOrAfter="2017-02-10T10:28:07.059Z"><saml:AudienceRestrictionCondition><saml:Audience>https://gh-prem.accesscontrol.windows.net/</saml:Audience></saml:AudienceRestrictionCondition></saml:Conditions><saml:AttributeStatement><saml:Subject><saml:SubjectConfirmation><saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod></saml:SubjectConfirmation></saml:Subject><saml:Attribute
AttributeName="name"
如何在jmeter中转换"和<。由于下一个采样器的 POST 主体采用以下属性:
<t:RequestSecurityTokenResponse
xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust"><t:Lifetime><wsu:Created
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-06T10:06:14.384Z</wsu:Created><wsu:Expires
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2017-02-06T11:06:14.384Z</wsu:Expires></t:Lifetime><wsp:AppliesTo
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"><wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing"><wsa:Address>https://gh-prem.accesscontrol.windows.net/</wsa:Address></wsa:EndpointReference></wsp:AppliesTo><t:RequestedSecurityToken><saml:Assertion
MajorVersion="1" MinorVersion="1"
AssertionID="_99273d06-e73c-4ce5-acf5-6ba43c8c7990"
Issuer="http://xxx.xxx-dev.comt/adfs/services/trust"
IssueInstant="2017-02-06T10:06:14.400Z"
xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion"><saml:Conditions
NotBefore="2017-02-06T10:06:14.384Z"
NotOnOrAfter="2017-02-06T11:06:14.384Z"><saml:AudienceRestrictionCondition><saml:Audience>https://gh-prem.accesscontrol.windows.net/</saml:Audience></saml:AudienceRestrictionCondition></saml:Conditions><saml:AttributeStatement><saml:Subject><saml:SubjectConfirmation><saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod></saml:SubjectConfirmation></saml:Subject><saml:Attribute
AttributeName="name"
AttributeNamespace="http://schemas.xmlsoap.org/ws/2005/05/identity/claims"><saml:AttributeValue>
你能帮我用一些截图来解决这个问题吗 我得到了一些关于如何使用 Beanshell 预处理器的提示,但它对我没有帮助,或者我不确定如何实施 beanshell 来缓解这个问题。
注意:我使用的内容编码为 utf-8
看看__unescapeHtml() function,它可以解码HTML-encoded个字符串on-the-fly
您可以直接在 HTTP Request 采样器主体或其他任何地方使用此功能。
有关 JMeter 函数、如何使用它们、有什么限制等的更多信息,请参阅 How to Use JMeter Functions 系列帖子。
这就是我为缓解该问题所做的工作。希望对新手有所帮助(非常感谢 Dmitri Tikhanski)
以上令牌是作为对 GET 方法的响应而生成的 SAML 1.1 令牌。如果您使用 ADFS 身份验证,您将获得一个很大的 HTML,其中您将拥有 - WA、Wresult、Wctx。 (对我来说只有 wresult(SAML 1.1 token) 是相关候选者)
使用 RegularExpression Extractor 提取结果如下。
enter image description here
并且捕获的结果将在 /v2/wsfederation 中替换为函数 __unescapeHtml。
enter image description here
注意:1) Wa 结果在我的案例中不是动态的 2) wctx 字符串是一个静态字符串。
希望这对您有所帮助。谢谢。