【问题标题】:Always getting error code in JMeter for missing Alias in certificate由于证书中缺少别名,总是在 JMeter 中出现错误代码
【发布时间】:2019-10-02 09:29:54
【问题描述】:

我在使用 Jmeter 加载客户端证书时遇到问题。我尝试了所有方法,包括编辑 system.properties 文件,使用以下几行:

javax.net.ssl.keyStoreType=pkcs12 or jks  
javax.net.ssl.keyStore=/path/to/your/jsk keystore or .p12 certificate
javax.net.ssl.keyStorePassword=your certificate or keystore password 

然后通过SSL管理器手动导入证书并手动输入密码,没有任何效果。

我总是有这个错误:

javax.net.ssl.SSLException: java.lang.IllegalArgumentException: No certificate found for alias:'mykey'
    at sun.security.ssl.Alerts.getSSLException(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.handleException(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:404)
    at .....

别名在那里,因为证书打印显示: 密钥库类型:PKCS12 密钥库提供者:SUN

您的密钥库包含 1 个条目

别名:mykey 创建日期:2019年9月27日 条目类型:trustedCertEntry

什么可能导致 Jmeter 无法读取证书?以前有人做过类似的事情吗?

【问题讨论】:

    标签: ssl testing jmeter certificate ssl-certificate


    【解决方案1】:

    system.properties 文件的方法工作正常,只需确保重新启动 JMeter 以获取更改。

    另一个选项是通过 -D 命令行参数传递属性,例如:

    jmeter -Djavax.net.ssl.keyStoreType=PKCS12 -Djavax.net.ssl.keyStore=your.keystore.p12 -Djavax.net.ssl.keyStorePassword=secret 
    

    your.keystore.p12secret 替换为 .p12 密钥库的完整或相对路径以及相应的实际密码。

    更多信息:

    【讨论】:

    • 感谢您的回答。但是,您编写的所有内容都已尝试过,并且错误仍然相同。以下是日志中的错误:2019-10-03 11:04:57,480 INFO o.a.j.u.SSLManager:KeyStore 已创建 OK 2019-10-03 11:04:57,668 错误 o.a.j.u.SSLManager:加载密钥库时出现问题:找不到密钥 java.io .IOException: 没有找到键
    • 配置应该是正确的。 javax.net.ssl.keyStoreType=pkcs12 javax.net.ssl.keyStore=C:/Users/Desktop/apache-jmeter-5.1/bin/MyCard2.p12 javax.net.ssl.keyStorePassword=mypassword 知道还有什么可能问题?
    • 检查 https.keyStoreStartIndex https.keyStoreEndIndex 属性,也许您将索引设置为 1 以上的范围,因此无法找到密钥。您可以将下一行添加到 system.properties 文件 javax.net.debug=ssl 并在 STDOUTjmeter.log 文件中查找可疑条目。
    猜你喜欢
    • 1970-01-01
    • 2019-11-21
    • 1970-01-01
    • 2012-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 2017-01-31
    相关资源
    最近更新 更多