WebSphere® Application Server supports security in the CORBA C++
client to access-protected enterprise beans. If configured, C++ CORBA clients can access protected
enterprise bean methods using a client certificate to achieve mutual authentication on WebSphere Application Server applications.
About this task
You can achieve interoperability of Security Authentication Service between the
C++ Common Object Request Broker Architecture (CORBA) client and WebSphere Application Server using Common Secure Interoperability Version 2
(CSIv2) authentication protocol over Remote Method Invocation over the Internet Inter-ORB Protocol
(RMI-IIOP). The CSIv2 security service protocol has authentication, attribute and transport layers.
Among the three layers, transport authentication is conceptually simple, however, cryptographically
based transport authentication is the strongest. WebSphere Application Server
has implemented the transport authentication layer, so that C++ secure CORBA clients can use it
effectively in making CORBA clients and protected enterprise bean resources work together.
Security authentication from non-Java based C++ client to enterprise beans. WebSphere Application Server supports security in the CORBA C++ client to
access-protected enterprise beans. If configured, C++ CORBA clients can access protected enterprise
bean methods using a client certificate to achieve mutual authentication on WebSphere Application Server applications.
To support the C++ CORBA client in accessing protected enterprise beans, complete the following
steps:
![[AIX Solaris HP-UX Linux Windows]](../images/ngdist.svg)
Procedure
- Obtain a valid certificate to represent the client and export its public key to the
target enterprise bean server.
A valid certificate is needed to represent the C++ client. Request a certificate from the
certificate authority (CA) or create a self-signed certificate for testing purposes.
Use the Key Management Utility from the IBM® Global Security Kit (GSKit) to extract the public key
from the personal certificate and save it in the .arm format.
- Prepare a truststore file for WebSphere Application Server.
Add the extracted client public key in the
.arm file from the client to the server key
truststore file. The server can now authenticate the client.
Note: This is done by
invoking the Key Management Utility through ikeyman.bat or ikeyman.sh from WebSphere Application Server installation.
- Configure WebSphere Application Server to support Secure Sockets
Layer (SSL) as the authentication mechanism.
- Start the administrative console.
- Locate the application server that has the target enterprise bean deployed and
configure it to use SSL client certificate authentication.
If it is a base installation, complete the following steps:
- Click Security > Global security. Under RMI/IIOP security, click CSIv2 inbound
communications. Select Supported for the Basic authentication and Client certificate
authentication options. Leave the rest of the options as defaults.
- Click OK.
- Click Security > Global security. Under RMI/IIOP security, click CSIv2 inbound
communications and verify that the SSL-supported option is selected under Transport.
If it is a
WebSphere Application Server Network Deployment setting, complete the following steps:
- Click Servers > Application Servers > server_name_where_the_EJB_resides.
- Under Security, click Server security.
- Select the RMI/IIOP security for this server overrides cell settings option.
- Under Additional properties, click CSIv2 inbound communications.
- Select Supported for the Basic authentication and Client certificate authentication
options. Leave the rest of the options as defaults.
- Click Servers > Application Servers > server_name_where_the_EJB_resides.
- Under Security, click Server security.
- Under Additional properties, click CSIv2 inbound communications.
- Verify that the SSL-Supported option is selected.
For details, see Configuring Common Secure Interoperability Version 2 inbound communications and Configuring inbound transports.
- Restart the application server.
The WebSphere Application Server is ready to take a C++ CORBA security
client and a mutually authenticated server and client by using SSL in the transport layer.
- Configure the C++ CORBA client to use a certificate in performing the mutual
authentication.
Client users are accustomed to using property files in their applications because they are
helpful in specifying configuration settings. The following list presents important C++ security
settings:
Table 2. C++ security properties.
This tables lists important C++ security settings.
| C++ security setting |
Description |
| com.ibm.CORBA.bootstrapHostName=ricebella.austin.ibm.com |
Specifies the target host name. |
| com.ibm.CORBA.securityEnabled=yes |
Enables security. |
| com.ibm.CSI.performTLClientAuthenticationSupported=yes |
Ensures client is supporting mutual
authentication by certificate |
| com.ibm.ssl.keyFile=C:/ricebella/etc/DummyKeyRingFile.KDB |
Specifies which key database file to
use. |
| com.ibm.ssl.keyPassword=WebAS |
Specifies the password for opening the key
database file. WebSphere Application Server supports a utility called
PasswordEncode4cpp to encode the plain password. |
| com.ibm.CORBA.translationEnabled=1 |
Enables the valueType conversion. |
To use the property files in running a C++ client, an environment variable
WASPROPS, is used to indicate where a property file or a list of property files exists.
For the complete set of C++ client properties, see the sample property file
scclient.props, which is shipped with the product located in the app_server_root/profiles/profile_name/etc directory.