15 years ago
Request using client auth (keystore)
I have been gathering info on how to get a request that requires client authentication via an asymmetric key pair in a keystore. It still does not work and I need some ideas. Here's what I have done.
(I have also tried with and without setting the keystore in Preferences/SSL Settings. I'm not sure what that global configuration is for.)
The server (IIS) responds with "403.7 - Forbidden: SSL client certificate is required"
Wireshark reports a message flow that is something like this:
The final response is an IIS generated web page with 403.7 HTTP header and HTML that says "HTTP Error 403.7 - Forbidden: SSL client certificate is required".
It certainly looks like SoapUI is not presenting the client cert. Have I configured it correctly?
- Added -Dsun.security.ssl.allowUnsafeRenegotiation=true to the .vmoptions file to get past this error http://stackoverflow.com/questions/2606873/sslexception-hellorequest-followed-by-an-unexpected-handshake-message
- In the project configuration, under SecurityConfigurations/Keystores&Certificates, I added my client certificate (in PFX format). The status is OK (cer and jks formats did not work)
- In the request properties window, I selected the client certificate as the value against SSL Keystore.
(I have also tried with and without setting the keystore in Preferences/SSL Settings. I'm not sure what that global configuration is for.)
The server (IIS) responds with "403.7 - Forbidden: SSL client certificate is required"
Wireshark reports a message flow that is something like this:
- client->server: SSLv2 Client Hello
- server->client: TLSv1 Server Hello, Certificate, Server Hello Done
- ... followed by the TLS client key exchange, cipher spec change, handshake message, application data etc etc.
The final response is an IIS generated web page with 403.7 HTTP header and HTML that says "HTTP Error 403.7 - Forbidden: SSL client certificate is required".
It certainly looks like SoapUI is not presenting the client cert. Have I configured it correctly?