使JMeter通过Kerberos进行身份验证

时间:2019-06-05 15:25:13

标签: jmeter kerberos

尝试通过JMeter进行Kerberos身份验证时遇到了问题。我在其他站点上遵循了一些设置指南,但JMeter仍然无法通过身份验证。我录制的所有HTTP请求在播放过程中均失败,代码为 401

在此之前,我们的测试服务器同时使用Kerberos和NTLM进行身份验证,并且测试正常。直到本月,安全团队才将Kerberos强制为唯一安全性。


在JMeter命令提示符屏幕上,每次运行测试时都会显示:

  

[Krb5LoginModule]已将Krb5Principal MyUserName 添加到主题   成功提交


HTTP请求仍返回401

根据我的测试计划,我添加了:

 -HTTP授权管理器
 -HTTP请求默认值
 -标头经理
 -Cookie经理


授权存储在授权管理器中

|| ... URL ... || ---用户名-||密码|| -----域---- || ----领域----- ||机制||

|| ... URL ... || myUserName || *********** || COMDOMAIN || DEPT.COMPANY.COM || KERBEROS ||


我已经编辑了krb5.conf,如下所示:

  

[libdefaults]   default_tkt_enctypes =省略
  default_tgs_enctypes =省略
  转发=省略
  dns_lookup_kdc = true
  dns_lookup_realm = true
  udp_preference_limit = 1
  
  default_realm = DEPT.COMPANY.COM
  
  [领域]
   DEPT.COMPANY.COM = {
  kdc = TEST-SPACE.dev.company.com
  admin_server = TEST-SPACE.dev.company.com
  }
  
  [domain_realm]
   COMDOMAIN = DEPT.COMPANY.COM

kdc admin_server 由安全人员提供。我无权访问服务器安全性。

编辑1: 有关此问题的更新。因此,我重新启用了kerberos凭证的提示,以手动将我的凭证输入到JMeter测试中并获得以下信息:

KinitOptions cache name is C:\Users\myadusername\krb5cc_MyADusername
LSA: Found Ticket
LSA: Made NewWeakGlobalRef
LSA: Found PrincipalName
LSA: Made NewWeakGlobalRef
LSA: Found DerValue
LSA: Made NewWeakGlobalRef
LSA: Found EncryptionKey
LSA: Made NewWeakGlobalRef
LSA: Found TicketFlags
LSA: Made NewWeakGlobalRef
LSA: Found KerberosTime
LSA: Made NewWeakGlobalRef
LSA: Found String
LSA: Made NewWeakGlobalRef
LSA: Found DerValue constructor
LSA: Found Ticket constructor
LSA: Found PrincipalName constructor
LSA: Found EncryptionKey constructor
LSA: Found TicketFlags constructor
LSA: Found KerberosTime constructor
LSA: Finished OnLoad processing

Acquire default native Credentials
Found no TGT's in LSA
Kerberos username [MyADusername]: myadusername
Kerberos password for myadusername:
KdcAccessibility: reset
KinitOptions cache name is C:\Users\myadusername\krb5cc_MyADusername
Acquire default native Credentials
Found no TGT's in LSA

边注::我查找了一些在线帮助,并在regedit中创建了一个名为allowtgtsessionkey的REG_SZ注册表,默认为1,但无济于事。

关于同一问题,我认为可能与 keytab 有关,但是我对keytab的了解有限。因此,我可以正常登录该网站,只是无法让JMeter通过Kerberos进行访问。

0 个答案:

没有答案