JMeter : patch ‘HTTPS proxy’ pour permettre d’enregistrer une session de navigation d’un site web en HTTPS

Juste un mot pour vous dire que je viens de proposer un patch pour ajouter une fonctionnalité, à mon sens, importante à JMeter : l’enregistrement d’une session de navigation en HTTPS.

https://issues.apache.org/bugzilla/show_bug.cgi?id=47622

En effet, JMeter ne permet pas d’enregistrer directement une session de navigation d’un site HTTPS dans un script. Il y a la fonctionnalité « Tenter d’usurper HTTPS » qui permet le faire indirectement, mais cela ne marche pas toujours notamment quand il y a des redirections lors d’une authentification HTTPS. Voir ce billet.

Donc, le patch permet d’utiliser JMeter comme proxy « ssl » dans son navigateur, et de faire son script JMeter sur un site HTTPS (le protocole http continuant à fonctionner aussi bien entendu)

Pour l’instant, le patch vient juste d’être posté, il faut donc qu’il soit testé et (si tout ce passe bien) validé sur le SVN pour le retrouver dans une version « nightly » de JMeter, et j’espère, une prochaine version stable 😉

Si jamais vous avez les sources de JMeter sur votre poste, vous pouvez le tester en appliquant le patch, je suis preneur des commentaires et retours.

Petite mise à jour (05/08/2009) : si jamais vous souhaitez tester la fonctionnalité sans passer par la case « compilation avec Eclipse/Ant », vous pouvez télécharger une version 2.3.4 de tests avec ce patch.

http://www.milamberspace.net/jmeter-testing/dist/

Nouvelle mise à jour (06/08/2009) : le patch a été validé dans le subversion de JMeter (avec quelques améliorations, principalement sur l’utilisation du ‘keytool’ Java plutôt que openssl pour la génération du certificat SSL du proxy JMeter).

Vous pourrez directement télécharger une version nightly build dès que l’outil de génération automatique aura fait sont travail.

http://people.apache.org/builds/jakarta-jmeter/nightly/ (version après r801473)

Nouvelle mise à jour (05/01/2011) : Depuis la version 2.4 de JMeter, sortie en 2010, ce patch fait parti intégrante de JMeter, donc plus besoin de prendre la version Nightly.

./

r801473

JMeter : authentification par certificat SSL avec JMeter en mode non-gui

Un billet rapide pour compléter ce premier billet, et pour répondre à la question « comment tester un site demandant l’authentification par certificat SSL tout en lançant JMeter en ligne de commande ? ».

Pour cela, rien de sorcier, on édite le fichier Jmeter_Home/bin/system.properties.

Au niveau des lignes :
===================
# Location of the keystore
javax.net.ssl.keyStore=/home/milamber/client-ssl-authentification.p12
#
#The password to your keystore
javax.net.ssl.keyStorePassword=Mon_Password_P12
===================

Ensuite, on peux lancer JMeter en ligne de commande normalement.

Accessoirement, il n’est plus nécessaire de choisir le P12 dans JMeter en mode graphique (pour ce site).

Plus d’infos (en anglais) : le composant SSL Manager dans la documentation JMeter.

./

[Tutorial] JMeter et l’authentification par certificat SSL

L’authentification par certificat SSL consiste à demander à l’utilisateur d’une ressource ou d’un site protégé de fournir un fichier certificat SSL pour pouvoir s’authentifier et ainsi accéder à la ressource ou au site.

L’authentification par certificat SSL est ce l’on appelle une authentification ‘forte’, c’est-à-dire plus sécurisée que la simple saisie d’un login / mot de passe. Par ailleurs sa mise en place est relativement simple, ou tout du moins très documentée sur Internet. Ainsi vous rencontrerez peut-être un site Web utilisant ce type d’authentification (par exemple un extranet) à tester avec JMeter.

Alors comment faire pour gérer cette authentification SSL avec JMeter ? Ce micro tutorial vous aidera à comprendre les subtilités du SSL dans JMeter.

Bon courage.