title: Client-side policy error using JacORB (Java/CORBA) with SSL
body: <p>I'm trying to add SSL to an existing CORBA app, and I keep getting this error:</p>
  
  <pre>
  org.omg.CORBA.NO_PERMISSION: Client-side policy requires SSL/TLS, but server doesn't support it  vmcid: 0x0  minor code:  0  completed: No
          at org.jacorb.orb.iiop.ClientIIOPConnection.checkSSL(ClientIIOPConnection.java:535)
          at org.jacorb.orb.iiop.ClientIIOPConnection.connect(ClientIIOPConnection.java:144)
          at org.jacorb.orb.giop.GIOPConnection.sendMessage(GIOPConnection.java:835)
          at org.jacorb.orb.giop.GIOPConnection.sendRequest(GIOPConnection.java:805)
          at org.jacorb.orb.giop.ClientConnection.sendRequest(ClientConnection.java:302)
          at org.jacorb.orb.giop.ClientConnection.sendRequest(ClientConnection.java:282)
          at org.jacorb.orb.Delegate.invoke_internal(Delegate.java:919)
          at org.jacorb.orb.Delegate.invoke(Delegate.java:868)
          at org.jacorb.orb.Delegate.is_a(Delegate.java:1268)
          at org.omg.CORBA.portable.ObjectImpl._is_a(ObjectImpl.java:112)
          at databridge.autogen.ILoginManagerHelper.narrow(ILoginManagerHelper.java:57)
          at databridge.test.Client.main(Client.java:59)
  </pre>
  
  <p><br/>
  I have generated keystores for both client and server and exchanged the keys between the two. Using this setup, I can get the demo application that came in the JacORB download to run successfully. The only difference I can tell is that my test is using the Tie method to get the POA. There are some policies that go into that, but I can't find any information on what policies need to go in there to enable SSL, if any. I'm not even sure that's the problem as the JacORB demo doesn't set any policies on the server or poa. When I run the -Djavax.net.debug=ssl, I can see the keystores load up the trusted certs on both the client and the server. I'm just not sure what policies are being referred to here, but it's odd that the demo works and the test doesn't using the exact same keystores and properties.
  <br/><br>
  I've emailed the mailing list, but I'm not holding out much hope as that doesn't seem to be very active. Any help would be greatly appreciated. Below are my properties files.
  <br/>
  <br/>
  Server Props:</p>
  
  <pre>
  jacorb.security.support_ssl=on
  jacorb.security.ssl.server.supported_options=60
  jacorb.security.ssl.server.required_options=20
  jacorb.ssl.socket_factory=org.jacorb.security.ssl.sun_jsse.SSLSocketFactory
  jacorb.ssl.server_socket_factory=org.jacorb.security.ssl.sun_jsse.SSLServerSocketFactory
  jacorb.security.keystore=dbserver.jks
  jacorb.security.keystore_password=dbsslserver_pass
  jacorb.security.jsse.trustees_from_ks=on
  jacorb.security.jsse.log.verbosity=4
  jacorb.implname=StandardImplName
  </pre>
  
  <p><br/>
  <br/>
  client props</p>
  
  <pre>
  jacorb.security.support_ssl=on
  jacorb.security.ssl.client.supported_options=60
  jacorb.security.ssl.client.required_options=20
  jacorb.ssl.socket_factory=org.jacorb.security.ssl.sun_jsse.SSLSocketFactory
  jacorb.security.keystore=dbclient.jks
  jacorb.security.keystore_password=dbsslclient_pass
  jacorb.security.jsse.trustees_from_ks=on
  jacorb.security.jsse.log.verbosity=4
  jacorb.implname=StandardImplName
  </pre>