JMeter und optionales SSL-Client-Zertifikat

8

Ich richte einen Testplan mit JMeter 2.8 mit SSL-Client-Zertifikaten ein. Der Testplan besteht grob gesagt aus zwei https-Aufrufen zu server1 und server2.

Der heikle Teil ist, dass der Aufruf von server1 keine SSL-Clientauthentifizierung verwenden darf (obwohl der Server eine anfordert), während der Aufruf von server2 die SSL-Clientauthentifizierung verwenden muss.

Momentan, sobald ich JMeter einen Keystore gebe, senden alle https-Aufrufe ein SSL-Zertifikat, was dazu führt, dass der Aufruf von server1 fehlschlägt.

Ich habe derzeit zwei Ansätze ausprobiert:

  1. Ich habe die -Djava.net.ssl.keyStore=xxx von der JMeter-Befehlszeile entfernt und einen Beanshell- oder BSH-Preprozessor verwendet, um sie direkt vor dem Aufruf von server2 zu setzen, aber es funktioniert nicht und der Aufruf von Server 2 schlägt fehl, als wäre kein Keystore angegeben worden .
  2. Ich versuche, den Keystore-Verwaltungskonfigurator zu verwenden, um vor dem Aufruf von server1 einen nicht vorhandenen Schlüssel anzugeben, aber wenn ich die Start- und Endindizes nach dem letzten Zertifikat in den Speicher lege, sendet JMeter immer noch das erste Zertifikat im Speicher.
gabuzo 30.01.2013, 15:42
quelle

1 Antwort

8

Was Sie tun können, ist Folgendes:

  • Fügen Sie jmeter die folgenden JVM-Eigenschaften hinzu:

    %Vor%
  • Verwenden Sie Schlüsselspeicherkonfiguration

  • wird in user.properties festgelegt:

    %Vor%
  • Verwenden Sie HC4Impl für den Sampler, der das Client-Zertifikat senden muss

  • Benutze JavaImpl für den, der es nicht senden soll (es ist eine Art Trick, ich muss sagen, ich verstehe nicht, warum du kein Client-Zertifikat senden musst, wenn der Server es anfordert)

UBIK LOAD PACK 04.02.2013, 19:04
quelle

Tags und Links