JMeter:auth2.0身份验证过程B2C体系结构

问题描述

步骤:

  1. 点击网站-网站被重定向到一个包含动态参数的URL,例如STATE,NONCE和CLIENT-REQUEST-ID。

因此,在JMeter中,由于这些值直接来自HTTP请求,因此我无法获取这些值。 任何想法,如何获取?

  1. 单击带有凭据的登录时,正在发生身份验证过程,该过程正在生成令牌ID。 然后在下一个请求中,发生重定向并获得相同类型的URL(如步骤1中所示)。再次传递相同的参数。 并根据此请求生成访问令牌。

我无法获取这些参数(一次,状态,客户端请求ID)。有什么可以做的吗?

解决方法

如果您正在redirected到包含要查找的参数的URL,则应该能够从sub-sampler捕获它们

enter image description here

使用合适的Post-Processor,例如Regular Expression Extractor

enter image description here

另外,诸如使用者密钥之类的某些值是静态的,并且永不改变,而诸如nonce之类的某些值是随机的

如果您不需要自己进行OAuth登录挑战的负载测试,则可以要求开发人员或管理员向您提供永久令牌,您可以使用Authorization

HTTP Header Manager标头中发送 ,

是的,您是正确的,但就我而言,我没有任何子采样器。 那就是麻烦所在! 另外,这些参数来自托管网站的第三方(不在开发人员手中)。 我正在做的整个过程是负载测试。 那么,您要为此添加什么吗?

,

According to Microsoft,client-request-id是可选的(因此,您可以将其保留为关闭状态),如果我阅读此权限,则由客户端生成。因此,您也许可以只generate a random GUID in JMeter

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...