Jmeter: "No certificate found for alias"

标签 jmeter ssl-certificate keystore client-certificates

我在尝试使用 Jmeter 加载客户端证书时遇到问题。我相信我关注了this tutorial ,但在运行测试时出现错误。

据我所知,我的 keystore 文件似乎设置正确。如果我运行 keytool -list -v -keystore <mykeystore>我得到:

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 1 entry

Alias name: client
Creation date: Jul 31, 2017
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
<certificate body>

当我运行测试时,一切似乎从一开始就运行良好

Total of 1 aliases loaded OK from keystore

但是,在结果输出中我看到错误消息:

java.lang.IllegalArgumentException: No certificate found for alias:'client'

什么可能导致 Jmeter 无法读取证书?

最佳答案

对于非心灵感应的 JMeter 专家,在不知道您的确切配置步骤的情况下很难提供答案,因此我将提出一个绝对有效的解决方案:

  1. 还原所有配置更改(或者只是从 downloads 页面获取干净的 JMeter)

  2. 将下一行添加到 system.properties 文件(位于 JMeter 安装的“bin”文件夹中)

    javax.net.ssl.keyStoreType=pkcs12 or jks  
    javax.net.ssl.keyStore=/path/to/your/jks keystore or .p12 certificate
    javax.net.ssl.keyStorePassword=your certificate or keystore password 
    
  3. 重新启动 JMeter 以获取属性(如果您通过 -D 命令行参数传递属性,例如 jmeter -Djavax.net.ssl.keyStoreType=pkcs12 -Djavax.net.ssl.keyStore= secret.p12 ... - 不需要重启)

就是这样,现在您的传出 HTTP 请求将使用提供的证书进行加密。

更多信息:

关于Jmeter: "No certificate found for alias",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45422827/

相关文章:

rest - 如何以逗号分隔的方式获取 Jmeter 变量的值

ubuntu - 如何在 Ubuntu 15.10 中安装最新的 JMeter?

Java keystore 有效期超过 30 年

Java - 使用证书和私钥发出 HTTP POST 请求

java - 在 Undertow 中启用 HTTPS

java - Jmeter - 循环语句

performance - Jmeter远程/分布式测试吞吐量错误

ssl - 将 Identityserver4 与 asp.net 核心 Web 服务器一起使用时有两个证书?

iis-7 - godaddy 证书无法与 filezilla 一起使用

Azure:手动将应用服务证书添加到 key 保管库