2017-07-31 67 views
0

我在嘗試使用Jmeter加載客戶端證書時出現問題。我相信我遵循this tutorial,但在運行測試時出現錯誤。Jmeter:「沒有發現別名證書」

從我可以告訴,這似乎是我的密鑰庫文件設置正確。如果我運行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讀取證書失敗?

回答

1

對於非心靈感應JMeter的專家也將是十分困難的提供答案不知道您的具體配置步驟,所以我只是拿出這絕對有效的解決方案:

  1. 恢復所有配置更改(或者只是得到downloads頁面乾淨的JMeter)
  2. 下一行添加到system.properties文件(生活在你安裝Jmeter的「bin」文件夾)

    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 
    
  3. 重啓JMeter的挑性向上(如果您通過-D命令行參數一樣jmeter -Djavax.net.ssl.keyStoreType=pkcs12 -Djavax.net.ssl.keyStore=secret.p12 ...通過性能 - 重啓將不再需要)

就是這樣,現在你傳出HTTP請求將使用加密提供證書。

的更多信息:

+0

這是有幫助的,謝謝。這確實解決了無法找到別名的問題。它現在轉移到服務器證書錯誤,即非HTTP響應代碼:javax.net.ssl.SSLHandshakeException,非HTTP響應消息:收到致命警報:unknown_ca',但這可能完全是一個不同的問題。 – cchapman