You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Web银行软件登录负载测试问题及非Basic认证识别与测试方案咨询

问题1:登录模块负载测试设计方案
  • 先抓包还原真实登录流程:打开浏览器开发者工具(F12)切换到「网络」标签,正常操作登录,重点确认:
    • 登录请求的方法(通常为POST)、目标URL
    • 请求体中的参数(比如username/password,还有可能的csrf_token、captcha等校验字段)
    • 响应返回的认证凭证(比如Session Cookie、JWT Token等)
  • 替换HTTP Authorization Manager为普通HTTP请求:在JMeter中添加HTTP Request,填入抓包到的URL和请求方法,将参数(含参数化的用户名密码)按抓包结果填入「参数」或「请求体」区域。如果存在csrf token,需先添加HTTP Request请求首页,用正则表达式提取器或CSS选择器提取token,再传入登录请求。
  • 正确参数化用户名密码:使用CSV Data Set Config,配置文件路径、分隔符,将用户名和密码列映射为变量(比如${user}、${pass}),在登录请求的参数中直接引用这些变量。
  • 添加有效断言验证结果:不要仅依赖响应码,添加Response Assertion,检查响应内容中是否包含「登录成功」/「登录失败」的关键词,或者响应JSON中的特定字段(比如code:200或token存在),确保错误密码能触发失败断言。
  • 解决录制问题:如果BlazeMeter录制失败,换用JMeter自带的HTTP(S) Test Script Recorder:
    1. 启动JMeter代理,设置端口(比如8888)
    2. 配置浏览器代理到JMeter的端口
    3. 导入JMeter的根证书到浏览器,避免HTTPS请求无法抓取
    4. 录制时只保留登录相关请求,过滤掉静态资源(如js、css、图片)
问题2:确认目标软件的认证类型
  • 检查请求头:登录请求的请求头中如果没有Authorization: Basic xxxxx,直接排除Basic Authentication。
  • 分析登录请求与响应:
    • 若登录后响应返回Set-Cookie头,且后续请求携带该Cookie,即为Session认证(基于Cookie的会话)
    • 若登录响应返回JSON格式的access_token/id_token,后续请求头携带Authorization: Bearer xxxxx,即为Token认证(常见JWT、OAuth2)
    • 若请求体包含grant_type=password、client_id等参数,大概率是OAuth2 Password授权模式
  • 查看WWW-Authenticate响应头:部分认证类型会在未授权的响应中返回WWW-Authenticate头,比如Bearer、Digest,可直接从该字段识别类型。
  • 观察密码传输方式:抓包能看到明文密码的,是表单提交的简单认证;若密码是加密后的字符串,可能是前端做了哈希处理,或是使用了HTTPS之外的额外加密。

内容的提问来源于stack exchange,提问作者sakib rahman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 14:39:58