首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在J量仪中获取“授权”标头的oauth_signature和oauth_nonce值

如何在J量仪中获取“授权”标头的oauth_signature和oauth_nonce值
EN

Stack Overflow用户
提问于 2018-02-09 07:10:05
回答 1查看 5.8K关注 0票数 0

如何为J量表中的功能流中的两个请求获取“授权”头的oauth_signature和oauth_nonce值。

流程: 1.使用user/pwd登录(JSON格式)>能够使用xyz登录,响应将具有会话is,在随后的请求2中用作cookie。该cookie值成功地被传递(HTTP管理器已经添加) 3。在登录仪表板页面打开需要sessionid后,这也可以作为cookie传递4。登录用户将执行'add‘和'submit’操作,这些操作具有‘授权’头,授权头的值如下: OAuth realm="xyz“、oauth_version="1.0”、oauth_consumer_key="testapp“、oauth_timestamp="1517940303",oauth_nonce="abcd",oauth_signature_method=“HMAC 1”,oauth_signature="uxO7B%2B%2Fbo%3D“

当使用Blazemeter记录流时,捕获上面的授权头并观察到这个'nonce‘和'signature’值会动态地更改后续请求。

请指导如何通过关联捕获这些动态变化的值或任何其他方法,使测试计划始终成功运行。

当前,当运行测试时,它在通过“授权”头的任何地方都会失败。

但是,在HTTP授权管理器中尝试过,不确定以用户名/pwd的形式传递什么,因为登录成功地处理了第一个没有HTTP授权管理器的请求。

当试图获取有关如何生成签名值的详细信息时,请执行以下更新:使用oauth.js生成签名.this是供应商文件。但在后端,他们正在验证签名,并加上了“现在”和“时间戳”。

EN

回答 1

Stack Overflow用户

发布于 2018-03-05 05:49:11

nonce基本上是一个一次使用的数字,因此您可以为此发送任何唯一的数字。在大多数情况下,它是以毫秒为单位的当前时间戳,从Unix时代开始--JMeter的时间()函数产生了什么,所以非常简单。

关于签名,它有点复杂,因为您需要:

  1. 获取请求方法和URL
  2. 获取请求参数
  3. 百分比对将要签名的每个键和值进行编码
  4. 按编码键按字母顺序对参数列表进行排序
  5. 对于请求参数的每个键/值对:
代码语言:javascript
运行
复制
- Append the encoded key to the output string
- Append the `=` character to the output string
- Append the encoded value to the output string.
- Append `&` sign between key/value pairs if your request has > 1 parameter

  1. 使用使用者机密,oauth令牌秘密,并使用您的服务器所期望的算法加密请求。

有关OAuth核心1.0修订版A流的更多信息,请查看OAuth文章,希望它能说明执行经过身份验证的请求需要做些什么。您可能还会发现如何在OAuth安全应用程序上使用JMeter运行性能测试很有用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48700460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档