【问题标题】:Jmeter throwing service unavailable error when using jks in ssl manager在 ssl 管理器中使用 jks 时 Jmeter 抛出服务不可用错误
【发布时间】:2020-12-08 13:40:38
【问题描述】:

我使用 keytool(来自 jdk)将 mycert.cer 文件转换为 mycert.jks,并在 JMeter 的 SSL 管理器中使用它。将实现设置为 Java。当我运行我的脚本时,它会弹出 JKS 密码(输入转换期间设置的 jks 密码),然后结果显示为“应用程序不可用”(响应代码 - 503)。但是我可以看到应用程序或端点没有问题,因为它在 Load Runner 和 postman 中工作。 在这里寻求帮助,谢谢!

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    很遗憾,我们无能为力:

    1. 您用于将证书添加到密钥库的命令
    2. Lo​​adRunner 或 Postman 和 JMeter 的 HTTP Request 采样器的配置
    3. jmeter.log file

    您还可以尝试使用javax.net.ssl.keyStorejavax.net.ssl.keyStorePassword 属性设置密钥库的路径和密码,它可以防止您在密钥库导入期间出现拼写错误,并且可以在命令行非 GUI 模式下执行测试。详情请见How to Set Your JMeter Load Test to Use Client Side Certificates article

    最后但并非最不重要的一点是,您无需将 HTTP 请求采样器的实现切换为“Java”,HTTPClient4 通常支持客户端证书,而且您可以使用多个证书。

    【讨论】:

    • 感谢您的回复德米特里。我检查了日志,发现 ERROR o.a.j.u.SSLManager: Problem loading keystore: No key(s) found java.io.IOException: No key(s) found。我还检查了应用程序不可用错误仅在我将实现更改为 Java 并且与 SSL 无关时才会出现。在 Load Runner 中,我也遇到了这个问题。但是,使用 Web_set_cert 函数和参数 certIndex=1" 并使用 WinInet 解决了这个问题。请问有什么建议吗?
    • 我也尝试添加 https.keyStoreStartIndex=1 和 https.keyStoreEndIndex=1。启用 javax.net.debug=ssl。我在控制台中看到的只是“找不到合适的证书 - 没有客户端身份验证继续”
    猜你喜欢
    • 1970-01-01
    • 2020-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-18
    相关资源
    最近更新 更多