Chapter 14. ORB Configuration
14.1. About Common Object Request Broker Architecture (CORBA) Copy linkLink copied to clipboard!
Common Object Request Broker Architecture (CORBA) is a standard that enables applications and services to work together even when they are written in multiple, otherwise-incompatible, languages or hosted on separate platforms. CORBA requests are brokered by a server-side component called an Object Request Broker (ORB). JBoss EAP provides an ORB instance, by means of the Open JDK ORB component.
The ORB is used internally for Java Transaction Service (JTS) transactions, and is also available for use by your own applications.
14.2. Configure the ORB for JTS Transactions Copy linkLink copied to clipboard!
In a default installation of JBoss EAP, the ORB support for transactions is disabled. You can configure ORB settings in the iiop-openjdk subsystem using the management CLI or the management console.
The iiop-openjdk subsystem is available when using the full or full-ha profile in a managed domain, or the standalone-full.xml or standalone-full-ha.xml configuration file for a standalone server.
For a listing of the available configuration options for the iiop-openjdk subsystem, see IIOP Subsystem Attributes.
Configure the ORB Using the Management CLI
You can configure each aspect of the ORB using the management CLI. This is the minimum configuration for the ORB to be used with JTS.
The following management CLI commands are configured for a managed domain using the full profile. If necessary, change the profile to suit the one you need to configure. If you are using a standalone server, omit the /profile=full portion of the commands.
Enable the Security Interceptors
Enable the security attribute by setting the value to identity.
/profile=full/subsystem=iiop-openjdk:write-attribute(name=security,value=identity)
/profile=full/subsystem=iiop-openjdk:write-attribute(name=security,value=identity)
Enable Transactions in the IIOP Subsystem
To enable the ORB for JTS, set the value of transactions attribute to full, rather than the default spec.
/profile=full/subsystem=iiop-openjdk:write-attribute(name=transactions, value=full)
/profile=full/subsystem=iiop-openjdk:write-attribute(name=transactions, value=full)
Enable JTS in the Transactions Subsystem
/profile=full/subsystem=transactions:write-attribute(name=jts,value=true)
/profile=full/subsystem=transactions:write-attribute(name=jts,value=true)
For JTS activation, the server must be restarted as reload is not enough.
Configure the ORB Using the Management Console
- Select the Configuration tab from the top of the management console.
- Select Subsystems. In a managed domain, you will need to select the appropriate profile first.
- Select the IIOP subsystem and click View.
- Click the Edit button and modify the attributes as needed. Click on the Need Help? link for detailed explanations of each field.
- Click Save to save the changes.
14.3. Configure IIOP to Use SSL/TLS with the Elytron Subsystem Copy linkLink copied to clipboard!
You can configure the iiop-openjdk subsystem to use SSL/TLS to secure communication between clients and servers. The elytron subsystem, as well as the legacy security subsystem, provide the necessary components for configuring SSL/TLS for the iiop-openjdk subsystem as well as other subsystems within JBoss EAP. Use the following steps to configure the iiop-openjdk subsystem to use the elytron subsystem for SSL/TLS.
Use the following management CLI command to display the current legacy SSL/TLS configuration in the
iiop-openjdksubsystem./subsystem=iiop-openjdk:read-attribute(name=security-domain) { "outcome" => "success", "result" => "iiopSSLSecurityDomain" }/subsystem=iiop-openjdk:read-attribute(name=security-domain) { "outcome" => "success", "result" => "iiopSSLSecurityDomain" }Copy to Clipboard Copied! Toggle word wrap Toggle overflow The
iiop-openjdksubsystem must use either the legacysecuritysubsystem or theelytronsubsystem for SSL/TLS. You cannot use both at the same time. The above command shows theiiop-openjdksubsystem is using a legacy security domain for handling SSL/TLS. Before you can configure theiiop-openjdksubsystem to use theelytronsubsystem for SSL/TLS, you need to remove this reference:/subsystem=iiop-openjdk:undefine-attribute(name=security-realm)
/subsystem=iiop-openjdk:undefine-attribute(name=security-realm)Copy to Clipboard Copied! Toggle word wrap Toggle overflow If the
security-domainattribute in theiiop-openjdkis not defined, you can proceed to the next step.Create a
server-ssl-context.To use SSL/TLS with the
iiop-openjdksubsystem, you need to define aserver-ssl-context. JBoss EAP uses the configuration provided by theserver-ssl-contextwhen making an SSL/TLS connection as a server. You can find more details on creating aserver-ssl-contextin Enable One-way SSL/TLS for Applications using the Elytron Subsystem in How to Configure Server Security guide.Create a
client-ssl-context.To use SSL/TLS with the
iiop-openjdksubsystem, you need to define aclient-ssl-context. JBoss EAP uses the configuration provided by theclient-ssl-contextwhen making an SSL/TLS connection as a client. You can find more details on creating aclient-ssl-contextin Using a client-ssl-context in the How to Configure Server Security guide.Configure the
iiop-openjdksubsystem to use theclient-ssl-contextandserver-ssl-context.Example: Setting
client-ssl-contextandserver-ssl-contextCopy to Clipboard Copied! Toggle word wrap Toggle overflow Configure the connection to and from the
iiop-openjdksubsystem.You can indicate whether or not SSL/TLS connections are required when connecting to and from the
iiop-openjdksubsystem by adjusting the following attributes:-
To enable support for SSL in the
iiop-openjdksubsystem, setsupport-ssltotrue. Defaults tofalse. -
To require SSL/TLS connections from the
iiop-openjdksubsystem, setclient-requires-ssltotrue. Defaults tofalse. -
To require SSL/TLS connections to the
iiop-openjdksubsystem, setserver-requires-ssltotrue. Defaults tofalse. -
To adjust the
socket-binding, setssl-socket-bindingto the desired binding. Defaults toiiop-ssl.
Example: Setting SSL/TLS Connections to and from IIOP as Required
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
To enable support for SSL in the