SSL in IBM WebSphere MQ Classes for Java aktivieren

Für die Aktivierung von SSL müssen Sie eine Cipher-Suite angeben. Für die Angabe einer Cipher-Suite haben Sie zwei Möglichkeiten.

SSL wird nur für Clientverbindungen unterstützt. Zur Aktivierung von SSL müssen Sie die Cipher-Suite angeben, die bei der Kommunikation mit dem Warteschlangenmanager verwendet werden soll. Diese Cipher-Suite muss der im Zielkanal festgelegten CipherSpec entsprechen. Außerdem muss die angegebene Cipher-Suite von Ihrem JSEE-Provider unterstützt werden. Da sich Cipher-Suites jedoch von CipherSpecs unterscheiden, haben sie unterschiedliche Namen. SSL CipherSpecs und Cipher-Suites in WebSphere MQ-Klassen für Java enthält eine Tabellenzuordnung zwischen den von IBM WebSphere MQ unterstützten CipherSpecs und ihren Cipher-Suite-Entsprechungen, die in JSSE bekannt sind.

Geben Sie für die SSL-Aktivierung mithilfe der statischen Member-Variablen sslCipherSuite von MQEnvironment die Cipher-Suite an. Das folgende Beispiel bezieht sich auf einen SVRCONN-Kanal mit dem Namen SECURE.SVRCONN.CHANNEL, der konfiguriert wurde, um SSL mit der CipherSpec 'RC4_MD5_EXPORT' anzufordern:
MQEnvironment.hostname    = "your_hostname";
MQEnvironment.channel    = "SECURE.SVRCONN.CHANNEL";
MQEnvironment.sslCipherSuite = "SSL_RSA_EXPORT_WITH_RC4_40_MD5";
MQQueueManager qmgr = new MQQueueManager("your_Q_manager");

Obwohl der Kanal über die CipherSpec 'RC4_MD5_EXPORT' verfügt, muss die Java-Anwendung die Cipher-Suite 'SSL_RSA_EXPORT_WITH_RC4_40_MD5' angeben. Im Abschnitt SSL CipherSpecs und Cipher-Suites in WebSphere MQ-Klassen für Java finden Sie eine Liste der Zuordnungen zwischen den CipherSpecs und den Cipher-Suites.

Eine Anwendung kann eine Cipher-Suite auch durch die Festlegung der Umgebungseigenschaft CMQC.SSL_CIPHER_SUITE_PROPERTY angeben.

Alternativ dazu können Sie die Definitionstabelle für den Clientkanal (Client Channel Definition Table, CCDT) verwenden. Weitere Informationen hierzu finden Sie im Abschnitt Definitionstabelle für Clientkanal mit IBM WebSphere MQ Classes for Java verwenden.

Wenn in Ihrem Fall eine Clientverbindung erforderlich ist, die eine vom IBM Java JSSE FIPS-Provider (IBMJSSEFIPS) unterstützte Cipher-Suite verwendet, kann eine Anwendung das Feld 'sslFipsRequired' in der MQEnvironment-Klasse auf true setzen. Alternativ dazu kann die Anwendung die Umgebungseigenschaft CMQC.SSL_FIPS_REQUIRED_PROPERTY festlegen. Der Standardwert ist false. Dies bedeutet, dass eine Clientverbindung jede beliebige Cipher-Suite verwenden kann, die von IBM WebSphere MQ unterstützt wird.

Wenn eine Anwendung mehrere Clientverbindungen verwendet, bestimmt der Wert im Feld 'sslFipsRequired', der bei der ersten Erstellung der Clientverbindung durch die Anwendung verwendet wird, den Wert, der verwendet wird, wenn die Anwendung nachfolgende Clientverbindungen erstellt. Wenn die Anwendung also eine nachfolgende Clientverbindung erstellt, wird der Wert des Feldes 'sslFipsRequired' ignoriert. Sie müssen die Anwendung erneut starten, wenn Sie einen anderen Wert für das Feld 'sslFipsRequired' verwenden möchten.

Damit unter Verwendung von SSL eine Verbindung erfolgreich hergestellt werden kann, muss der JSSE-Truststore mit Stammzertifikaten der Zertifizierungsstelle konfiguriert werden, damit das vom Warteschlangenmanager vorgelegte Zertifikat authentifiziert werden kann. Ähnlich gilt Folgendes: Wenn SSLClientAuth im SVRCONN-Kanal auf MQSSL_CLIENT_AUTH_REQUIRED gesetzt wurde, muss der JSSE-Schlüsselspeicher ein Identifizierungszertifikat enthalten, das vom Warteschlangenmanager als vertrauenswürdig eingestuft wird.


Konzept Konzept

Feedback

Timestamp icon Letzte Aktualisierung: 30. Oktober 2018
http://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.dev.doc/com.ibm.mq.dev.doc/q031220_.htm ja11330_