在我们公司,我们正在测试的网络应用程序使用分配给用户的活动目录角色来访问网站。
修改 我忘记提到的重要信息是,在访问网站时,我不会提示输入用户名和密码。只有在我的用户配置文件中分配了正确的Active Directory角色时,才会显示该网站。
例如,
我已经尝试过(怀疑地,绝望地让它工作)HTTP授权管理器中的基本/ Kerberos授权,甚至运行JMeter作为该服务帐户仍然没有运气。我一直得到以下
Thread Name: Users 1-1
Sample Start: 2017-04-26 17:08:18 CDT
Load time: 83
Connect Time: 13
Latency: 83
Size in bytes: 438
Sent bytes:136
Headers size in bytes: 243
Body size in bytes: 195
Sample Count: 1
Error Count: 1
Data type ("text"|"bin"|""): text
Response code: 401
Response message: Unauthorized
Response headers:
HTTP/1.1 401 Unauthorized
Server: nginx/1.10.1
Date: Wed, 26 Apr 2017 22:08:18 GMT
Content-Type: text/html
Content-Length: 195
Connection: keep-alive
WWW-Authenticate: Negotiate
X-Frame-Options: deny
X-Content-Type-Options: nosniff
HTTPSampleResult fields:
ContentType: text/html
DataEncoding: null
我只是想知道这里是否有任何人让JMeter在类似场景中工作/如果有人能指出我正确的方向来克服这个障碍。
感谢所有人的帮助。
答案 0 :(得分:1)
您需要在应用程序中确定身份验证的确切实现。
鉴于您收到WWW-Authenticate: Negotiate
- 这绝对不是基本HTTP身份验证。
Negotiate
可能代表NTLM或代表Kerberos(或者在某些情况下代表两者,即如果Kerberos不成功则会退回到NTLM)并且JMeter需要是为这些方案配置不同。
例如对于NTLM,您需要在HTTP Authorization Manager中仅提供凭据和域,并且对于Kerberos,您需要填充Realm并在 jaas下设置Kerberos设置(KDC和登录配置) .conf 和 krb5.conf 文件
有关更多信息和示例配置,请参阅Windows Authentication with Apache JMeter文章。