java使用keytab认证sso_Java客户端和Kerberos / SSO - Krb5LoginModule - 不重用票证

我正在运行JMeter,这取决于 JDK 1.8 的 Krb5LoginModule .

在我看来, Krb5LoginModule 无法跨多个请求维护kerberos会话 . 这会导致 HTTP 401 并在每次请求之前重新进行握手 .

我正在尝试重现具有严重间歇性性能问题的 生产环境 环境,我想在我的测试中包含Kerberos / SSO身份验证,但我无法将其设置为像使用我的REST服务器的Windows客户端一样运行 .

REST服务器向数百个Excel加载项客户端提供数据,这些客户端设置为使用Kerberos进行身份验证 . 在访问日志中,我看到每个客户端最初触发HTTP状态401响应,然后是200,并且在客户端活动期间再触发200秒 .

为了避免混淆,服务器正在处理Kerberos握手并且不使用servlet容器会话 .

当我的测试运行时,我看到服务器上的401拒绝了每个请求,Java转到Kerberos KDC获取另一个票证,然后重新提交 . 虽然这很有效,但我的KDC服务器每秒都不能处理多个请求并超出请求次数,所以我无法提升负载测试 .

那么为什么Krb5LoginModule不保留从KDC获得的kerberos票并预先验证每次调用,就像Excel一样?

这是我为配置尝试过的:

JMeter {

com.sun.security.auth.module.Krb5LoginModule required

useTicketCache=true

ticketCache="FILE:krb.cache"

useKeyTab=true

keyTab="FILE:krb.keytab"

storeKey=true

principal="-tsk-thing-ldap-dev@DO.AD.DUM.COM"

debug=true;

};

我已经尝试过使用keytabs而没有使用票证缓存而没有 . 我希望我只是错误地配置,但我看不出如何 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值