SSL Certificates for authenticating server from client side

Any idea how to install authority certificates for server authentication on SSL? I'm trying to get an ldaps: connection to OID, and to test it out it looks like I will need to put in a test root certificate.

I can't see where the SSL engine get's it's configuration from.

Of course it's made more complex by the factory/interface pattern used, to allow multiple implementations of SSL.

[409 byte] By [malcolmmca] at [2007-10-2 6:54:36]
# 1

Well, the good news is; I've sorted it and can get an LDAPS connection. The bad news; it doesn't help. I still get NoPermissionException when I try to modify a user.

For anyone with similar problems, the certificates are in $JAVA_HOME/jre/lib/security/cacerts. Install certs with keytool -import.

The initial password is "changeit".

malcolmmca at 2007-7-16 20:22:23 > top of Java-index,Java Essentials,Java Programming...
# 2

> For anyone with similar problems, the certificates are in

> $JAVA_HOME/jre/lib/security/cacerts. Install certs with keytool -import.

>

> The initial password is "changeit".

okay.... what are we supposed to do with that?

It sounds like you haven't created a certificate which actually identifies a valid user. Or that user doesn't have permissions to do the stuff you are trying to do.

bsampieria at 2007-7-16 20:22:23 > top of Java-index,Java Essentials,Java Programming...
# 3

Not sure how to import certificates from older versions or on a linux but my 1.5 windows there is a tool called javacpl.exe in the jre bin directory.

Since 1.5 the password of the keystores is not changeit anymore, anyway

starting that program gives me the option to import certificates for several

purposes (signed CA, client auth ...).

Security tab, Certificates button, client auth for the cert type dropdown.

You could try to import your cert there.

There is also the debug option when running your app:

java -Djavax.net.debug=all YourClass

There is also the option of creating your own keystore and importing the cert

in there. You can export the public version of your private key to give to the server

used for authentication.Both keystores need each other's public version of the private key for authentication on the server and client.

The option to use your keystore when running the app is:

java -Djavax.net.ssl.keyStore=MyStore -Djavax.net.ssl.keyStorePassword=pwd YourClass

harmmeijera at 2007-7-16 20:22:23 > top of Java-index,Java Essentials,Java Programming...
# 4

>

> okay.... what are we supposed to do with that?

>

> It sounds like you haven't created a certificate

> which actually identifies a valid user. Or that user

> doesn't have permissions to do the stuff you are

> trying to do.

For the moment I'm using a trial SSL certificate from Verisign. This requires a special Root certificate to be installed in systems that connection to the SSL.

That means dowloading the root certificate from Verisign and installing it into the JRE.

The user certificate goes into the OID server via an Oracle Wallet.

malcolmmca at 2007-7-16 20:22:23 > top of Java-index,Java Essentials,Java Programming...
# 5
I would expect that also means that the server needs to know have the certificate signer's certificate in it's trusted certs list.
bsampieria at 2007-7-16 20:22:23 > top of Java-index,Java Essentials,Java Programming...
# 6
Yes, it needs it in the wallet before it will accept the user cert.
malcolmmca at 2007-7-16 20:22:23 > top of Java-index,Java Essentials,Java Programming...