Actuellement, je fais le test de charge de l'API à l'aide de LoadRunner, où le mTLS est implémenté côté serveur. Je peux également inclure les certificats (2 fichiers pem) à l'aide de la fonction web_set_certificate_ex en passant les chemins de certificat (clientA-crt.pem et clientA-key.pem) - les appels fonctionnent parfaitement.

Nous prévoyons maintenant d'utiliser jmeter pour les tests de charge. Dans un premier temps, j'ai converti pem au format p12 à l'aide de la commande suivante openssl pkcs12 -export -out Cert.p12 -in clientA-crt.pem -inkey clientA-key.pem -passin pass:root -passout pass:root

https://www.ibm.com/support/knowledgecenter/en/SSPH29_9.0.3/com.ibm.help.common.infocenter.aps/t_ConvertthepfxCertificatetopemFormat068.html

Ensuite, étape suivante, je convertis le cert.p12 en magasin de clés Java à l'aide de la commande suivante keytool -importkeystore -srckeystore Cert.p12 -srcstoretype PKCS12 -srcstorepass root123 -keystore dex.jks -storepass root111

https://www.blazemeter.com/blog/how-set-your-jmeter-load-test-use-client-side-certificates/

L'erreur ci-dessous est rencontrée : Importing keystore Cert.p12 to dex.jks... keytool error: java.io.IOException: keystore password was incorrect

Quelqu'un peut-il me dire où je me trompe.

Contenu de clientA-crt.pem

-----BEGIN CERTIFICATE----- some alphanumeric values -----END CERTIFICATE-----

Contenu de clientA-key.pem

-----BEGIN RSA PRIVATE KEY----- some alphanumeric values -----END RSA PRIVATE KEY-----

0
Anees Mohammed 27 janv. 2020 à 09:53

1 réponse

Meilleure réponse
  1. Vous n'avez pas besoin de convertir le keystore PKCS12 en keystore JKS, JMeter peut gérer les deux types, de plus c'est recommandé d'utiliser PKCS12 car JKS est un format propriétaire. Il vous suffit de "dire" à JMeter d'utiliser le format PKCS12 via le fichier system.properties

    javax.net.ssl.keyStoreType=pkcs12
    javax.net.ssl.keyStore=Cert.p12
    javax.net.ssl.keyStorePassword=root
    
  2. Si vous souhaitez utiliser le type .jks pour une raison quelconque, vous devez fournir le même mot de passe que celui que vous avez spécifié lors de la création du magasin de clés :

    keytool -importkeystore -srckeystore Cert.p12 -srcstoretype PKCS12  -srcstorepass root -keystore dex.jks  -storepass root111
    

Il peut être plus facile d'utiliser un outil basé sur une interface graphique comme KeyStore Explorer si vous n'êtes pas trop familier avec OpenSSL et Utilitaires de ligne de commande Keytool.

Plus d'informations : Comment Configurez votre test de charge JMeter pour utiliser des certificats côté client

0
Dmitri T 27 janv. 2020 à 08:20