Wie zu verwenden App Connect mit IBM MQ
IBM MQ unterstützt den Austausch von Informationen zwischen Anwendungen, Systemen, Diensten und Dateien durch das Senden und Empfangen von Nachrichtendaten über Messaging-Warteschlangen.
Verbindung zu und Verwendung von IBM MQ
Sie können mit App Connect können Sie eine Verbindung zu einem Warteschlangenmanager herstellen und einen Integrationsfluss konfigurieren, der ausgelöst wird, sobald eine Nachricht in der konfigurierten Warteschlange eingeht. Sie können auch einen Integrationsfluss erstellen, der Nachrichten in eine konfigurierte Warteschlange stellt oder von dort abruft, oder der Nachrichten in einem Thema veröffentlicht. Sie können eine Verbindung App Connect zu Warteschlangenmanagern herstellen, die vor Ort IBM MQ on IBM Cloud oder vor Ort laufen.
Um einen Integrationsfluss zu erstellen, der Daten zwischen IBM MQ queues und anderen Anwendungen weiterleitet, müssen Sie eine Verbindung App Connect zu jeder Anwendung im Fluss herstellen. Sie können ein Konto hinzufügen, um eine Verbindung zu IBM MQ entweder auf der Seite App Connect Designer Catalog oder beim Hinzufügen eines IBM MQ knoten zu einer Bewegung im Bewegungseditor hinzufügen.
Bevor Sie einen Ablauf starten, der den IBM MQ konnektor verwenden, stellen Sie sicher, dass Ihr Warteschlangenmanager läuft.
- Die Autorisierungsmethode Basic authentication erfordert in der Regel einen Benutzernamen und ein Passwort, um sich beim Queue Manager zu authentifizieren.
- Die Standard ( Einweg ) Transport Layer Security (TLS) Authentifizierungsmethode erfordert App Connect um sicherzustellen, dass es dem Warteschlangenmanager vertraut. Wenn Sie die Verbindung einrichten, müssen Sie das öffentliche Zertifikat des Warteschlangenmanagers angeben, damit es in den App Connect truststore importiert werden kann.
- Die gegenseitige ( zweiseitige ) TLS-Authentifizierungsmethode erfordert App Connect sicherstellen, dass es dem Warteschlangenmanager vertraut, und der Warteschlangenmanager muss ebenfalls sicherstellen, dass er dem App Connect. Wenn Sie die Verbindung einrichten, müssen Sie das öffentliche Zertifikat des Warteschlangenmanagers angeben, damit es in den App Connect truststore importiert werden kann. Sie müssen auch ein vom Benutzer erstelltes öffentliches Zertifikat für App Connect manuell in den Truststore des Warteschlangenmanagers importieren.
Voraussetzungen für Standard- und gegenseitige TLS-Authentifizierung
- Stellen Sie sicher, dass der Warteschlangenmanager und der von ihm verwendete Serververbindungskanal TLS-fähig sind. Stellen Sie sicher, dass der Kanal mit einer Verschlüsselungsspezifikation und einer SSL-Authentifizierungseinstellung von Required für die gegenseitige Authentifizierung konfiguriert ist.
Ein Beispiel für SSL-Eigenschaften zur Aktivierung von TLS auf IBM MQ on IBM Cloud

- Laden Sie von Ihrer IBM MQ laden Sie das öffentliche Zertifikat herunter, das vom Warteschlangenmanager vorgelegt wird und das App Connect erfordert, um dem Warteschlangenmanager zu vertrauen. Sie müssen dieses Zertifikat angeben, wenn Sie später eine Verbindung einrichten.
Ein Beispiel für das Herunterladen des öffentlichen Zertifikats für einen Warteschlangenmanager auf IBM MQ on IBM Cloud.
Wenn Sie eine IBM MQ on IBM Cloud dienstinstanz verwenden, laden Sie das öffentliche Zertifikat für den Warteschlangenmanager herunter, indem Sie die folgenden Schritte ausführen.- Klicken Sie im Navigationsbereich auf Verwalten und dann auf den Namen des Warteschlangenmanagers, mit dem Sie eine Verbindung herstellen möchten.
- Klicken Sie auf die Registerkarte Schlüsselspeicher.
- Identifizieren Sie das Zertifikat, das als „In Verwendung“ markiert ist: Warteschlangenmanager (z. B. Default: qmgrcert ) klicken Sie auf das Symbol Symbolleiste anzeigen
Klicken Sie auf die Zertifikatskachel und dann auf „Öffentliches Zertifikat herunterladen“, um die PEM-Datei herunterzuladen.

- Wenn Sie die gegenseitige TLS-Authentifizierung verwenden, führen Sie die folgenden Schritte aus.
- Erzeugen Sie ein öffentliches Zertifikat und ein privates Schlüsselpaar im PEM-Format. Fügen Sie bei Bedarf ein Passwort hinzu. Sie können Tools wie keytool oder OpenSSL verwenden, um das öffentliche Zertifikat und den privaten Schlüssel zu erzeugen. Dieses Zertifikat und der Schlüssel werden automatisch in einen internen App Connect client-Schlüsselspeicher importiert, wenn Sie später eine Verbindung einrichten, und für die clientseitige Authentifizierung verwendet.
- Konfigurieren Sie den Warteschlangenmanager so, dass er dem Client-Zertifikat von App Connect zu vertrauen, indem Sie das generierte öffentliche Zertifikat (aus dem vorherigen Schritt) in den Truststore des Warteschlangenmanagers in Ihrer IBM MQ instanz importieren.
Ein Beispiel für den Import Ihres öffentlichen Zertifikats in den Truststore des Warteschlangenmanagers auf IBM MQ on IBM Cloud
Wenn Sie eine IBM MQ on IBM Cloud dienstinstanz verwenden, importieren Sie das Zertifikat, indem Sie die folgenden Schritte ausführen.- Klicken Sie im Navigationsbereich auf Verwalten und dann auf den Namen des Warteschlangenmanagers, mit dem Sie eine Verbindung herstellen möchten.
- Klicken Sie auf die Registerkarte Vertrauensspeicher, klicken Sie auf Zertifikat importieren und wählen Sie dann Ihre PEM-Datei im Dateibrowserfenster aus.

Verbinden mit einem IBM MQ warteschlangenmanager
- BASIC
- Wählen Sie diese Option, um eine Verbindung mit dem Warteschlangenmanager über eine einfache Authentifizierung herzustellen, und füllen Sie dann die folgenden Felder aus.
- Name des Warteschlangenmanagers: Geben Sie den Namen des Warteschlangenmanagers an, mit dem eine Verbindung hergestellt werden soll.
- Hostname des Warteschlangenmanagers: Geben Sie den vollständig qualifizierten Hostnamen oder die IP-Adresse des IBM MQ servers an, auf dem der Warteschlangenmanager ausgeführt wird, z. B.
myserver.abc.comoder192.0.2.24. - Nummer des Listener-Ports: Geben Sie die Nummer des Ports an, an dem der Warteschlangenmanager lauscht.
- Benutzername: Geben Sie den Benutzernamen für die Authentifizierung beim Warteschlangenmanager an. (Wenn Sie eine Verbindung zu einem Warteschlangenmanager herstellen, der auf dem lokalen Cluster läuft, können Sie das Feld Benutzername leer lassen, wenn keine Authentifizierung erforderlich ist)
- API-Schlüssel/Passwort: Geben Sie den API-Schlüssel an, wenn Sie eine IBM MQ cloud-Bereitstellung verwenden, oder geben Sie das Passwort an, wenn Sie einen IBM MQ server vor Ort oder auf dem lokalen Cluster verwenden. (Für den lokalen Cluster können Sie das Feld Passwort leer lassen, wenn keine Authentifizierung erforderlich ist)
- Kanalname: Geben Sie den Namen eines Serververbindungskanals für den Warteschlangenmanager an.
- SSL-Modus
- Wählen Sie diese Option, um eine sichere Verbindung zum Warteschlangenmanager mit Hilfe der Standard-TLS-Authentifizierung herzustellen, und füllen Sie dann die folgenden Felder aus.
- Name des Warteschlangenmanagers: Geben Sie den Namen des Warteschlangenmanagers an, mit dem eine Verbindung hergestellt werden soll.
- Hostname des Warteschlangenmanagers: Geben Sie den vollständig qualifizierten Hostnamen oder die IP-Adresse des IBM MQ servers an, auf dem der Warteschlangenmanager ausgeführt wird, z. B.
myserver.abc.comoder192.0.2.24. - Nummer des Listener-Ports: Geben Sie die Nummer des Ports an, an dem der Warteschlangenmanager lauscht.
- Benutzername: Geben Sie den Benutzernamen für die Authentifizierung beim Warteschlangenmanager an. (Wenn Sie eine Verbindung zu einem Warteschlangenmanager herstellen, der auf dem lokalen Cluster läuft, können Sie das Feld Benutzername leer lassen, wenn keine Authentifizierung erforderlich ist)
- API-Schlüssel/Passwort: Geben Sie den API-Schlüssel an, wenn Sie eine IBM MQ cloud-Bereitstellung verwenden, oder geben Sie das Passwort an, wenn Sie einen IBM MQ server vor Ort oder auf dem lokalen Cluster verwenden. (Für den lokalen Cluster können Sie das Feld Passwort leer lassen, wenn keine Authentifizierung erforderlich ist)
- Kanalname: Geben Sie den Namen eines TLS-aktivierten Serververbindungskanals für den Warteschlangenmanager an.
- Warteschlangenmanager-Zertifikat: Suchen Sie das öffentliche Zertifikat, das Sie zuvor im PEM-Format für den Warteschlangenmanager heruntergeladen haben, und fügen Sie den Inhalt der heruntergeladenen Datei in dieses Feld ein.
Beispiel:
-----BEGIN CERTIFICATE----- MXIEFADAyMQswCQ4DCCAsgCCQDHlrUNBgkqhkiG9w0BAQs UQHDECAwJcmAZKYXN0aGFuMFqdXIwHhc1DVQQ8wDQYTwI0 GAswCQYDUwMTM4QIwODIWjDUwMTM4wJDV1MMjyBAQ0MMwJ qYXN0lwdXIwggIiMA0aGFuqGWcm3DQEBMQ8wDQYDVQA4IC KAoI7JsMKXWYkr2dbDrj4xcs3WmQxXcRkwAwgX2gIIMuBdz 8aYVsXE/zDbIoBImgIPvuw+6nJHvcPVF/CE+BI9abVou/P SoozeQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- CQ4DCCAsgCCQDHlrMXIEFADAyMQswUNBgkqhkiG9w0BAQs AZKYXN0aGFuMFqdXIUQHDECAwJcmwHhc1DVQQ8wDQYTwI0 UwMTM4QIwODIWjDGAswCQYDUwMTM4wJDV1MMjyBAQ0MMwJ wdXIwggIqYXN0liMA0aGFuqGWcm3DQEBMQ8wDQYDVQA4IC MKXWYkr2dbDrKAoI7Jsj4xcs3WmQxXcRkwAwgX2gIIMuBdz 5aYVsXE/oBImgzDbIIPvuw+6nJHvcPVF/BE+CI9abVou/P DoozeQ== -----END CERTIFICATE----- - Chiffre-Spezifikation: Geben Sie die Verschlüsselungsspezifikation an, die für den Kanal konfiguriert ist.
- Peer-Name: Geben Sie das Muster für den Distinguished Name (DN) an, das zur Validierung des DN des vom Queue-Manager vorgelegten Zertifikats verwendet werden soll, z. B.
CN=John Smith, O=IBM, OU=Test, C=GB.
- mtls
- Wählen Sie diese Option, um eine sichere Verbindung zum Warteschlangenmanager mit gegenseitiger TLS-Authentifizierung herzustellen, und füllen Sie dann die folgenden Felder aus.
- Name des Warteschlangenmanagers: Geben Sie den Namen des Warteschlangenmanagers an, mit dem eine Verbindung hergestellt werden soll.
- Hostname des Warteschlangenmanagers: Geben Sie den vollständig qualifizierten Hostnamen oder die IP-Adresse des IBM MQ servers an, auf dem der Warteschlangenmanager ausgeführt wird, z. B.
myserver.abc.comoder192.0.2.24. - Nummer des Listener-Ports: Geben Sie die Nummer des Ports an, an dem der Warteschlangenmanager lauscht.
- Benutzername: Geben Sie den Benutzernamen für die Authentifizierung beim Warteschlangenmanager an. (Wenn Sie eine Verbindung zu einem Warteschlangenmanager herstellen, der auf dem lokalen Cluster läuft, können Sie das Feld Benutzername leer lassen, wenn keine Authentifizierung erforderlich ist)
- API-Schlüssel/Passwort: Geben Sie den API-Schlüssel an, wenn Sie eine IBM MQ cloud-Bereitstellung verwenden, oder geben Sie das Passwort an, wenn Sie einen IBM MQ server vor Ort oder auf dem lokalen Cluster verwenden. (Für den lokalen Cluster können Sie das Feld Passwort leer lassen, wenn keine Authentifizierung erforderlich ist)
- Kanalname: Geben Sie den Namen eines TLS-aktivierten Serververbindungskanals für den Warteschlangenmanager an.
- Warteschlangenmanager-Zertifikat: Suchen Sie das öffentliche Zertifikat, das Sie zuvor im PEM-Format für den Warteschlangenmanager heruntergeladen haben, und fügen Sie den Inhalt der heruntergeladenen Datei in dieses Feld ein.
Beispiel:
-----BEGIN CERTIFICATE----- MXIEFADAyMQswCQ4DCCAsgCCQDHlrUNBgkqhkiG9w0BAQs UQHDECAwJcmAZKYXN0aGFuMFqdXIwHhc1DVQQ8wDQYTwI0 GAswCQYDUwMTM4QIwODIWjDUwMTM4wJDV1MMjyBAQ0MMwJ qYXN0lwdXIwggIiMA0aGFuqGWcm3DQEBMQ8wDQYDVQA4IC KAoI7JsMKXWYkr2dbDrj4xcs3WmQxXcRkwAwgX2gIIMuBdz 8aYVsXE/zDbIoBImgIPvuw+6nJHvcPVF/CE+BI9abVou/P SoozeQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- CQ4DCCAsgCCQDHlrMXIEFADAyMQswUNBgkqhkiG9w0BAQs AZKYXN0aGFuMFqdXIUQHDECAwJcmwHhc1DVQQ8wDQYTwI0 UwMTM4QIwODIWjDGAswCQYDUwMTM4wJDV1MMjyBAQ0MMwJ wdXIwggIqYXN0liMA0aGFuqGWcm3DQEBMQ8wDQYDVQA4IC MKXWYkr2dbDrKAoI7Jsj4xcs3WmQxXcRkwAwgX2gIIMuBdz 5aYVsXE/oBImgzDbIIPvuw+6nJHvcPVF/BE+CI9abVou/P DoozeQ== -----END CERTIFICATE----- - Chiffre-Spezifikation: Geben Sie die Verschlüsselungsspezifikation an, die für den Kanal konfiguriert ist.
- Client-Keystore: Suchen Sie das öffentliche Zertifikat und die privaten Schlüsseldateien, die Sie zuvor für die clientseitige Authentifizierung erstellt haben. Kopieren Sie dann den Inhalt des öffentlichen Zertifikats und des privaten Schlüssels im PEM-Format in dieses Feld, wobei Sie ein einzelnes Leerzeichen als Trennzeichen verwenden. Alternativ können Sie die beiden Dateien im PEM-Format verketten und den Inhalt der PEM-Datei in dieses Feld einfügen (zum Beispiel:
cat server.crt server.key > server.pem).Das folgende Beispiel zeigt Client-Keystore-Informationen.
-----BEGIN ENCRYPTED PRIVATE KEY----- MIIJnzBJBgkqhkiG9w0BBQ0qwwDgQID/15qTEH7xMCAggA MB0tRIjYgSCCVDiHwqfHd9XwHjD7PQo7RmSQeyEJvtAuQR AnBIkRVn/4uqwcHXbFUTBf4dS6GFAxLjiOaX8BwiKdpmw5 3ULOLuUG/Bn/kRd7wUhyo0esKCWe2aWPCwS7XIiNmuf17m 2mCTwzyLPJiPzjNp/6+X98oPDoHNZ7teWQVWl2D5yCvTUW Io/1L4zwMPB2cCf3Et8bSOpb+utx13Q6z2/SD2W0x3qhAu RKdPGuFgLFBrOeK9sCSlrpquQjYk7+XeIO4Q7T1vAKhwRS SnD8zsa75/TgfZh/HCkxxFUGZg== -----END ENCRYPTED PRIVATE KEY----- -----BEGIN CERTIFICATE----- MIIE4DCCAsgCCQDHlrUD9NYdhkiGAyMQswCQYDVQQGEwJJ UFqdXIwHhcNMjEwODA1DVQGFuMQ8wDQYTjESMBAGYWlwI0 DUwMTM4QQGEwJGAWjhcNAyBAQswCQYDESMMjIwODI0MMwJ aGFuMQ8wDQYDN0lwdXIwggSIbDAZKYWcm3DQEBAQUAA4IC CAQ8DwA7JsMKXWxcs3WMIMuBdzX2T7mQuHms5YfZ3HxXcRk 8aYVBSQSXE/zDgISVPvuw+6nJ1dJPVF/CE+BI9jkjVou/P AoozeQ== -----END CERTIFICATE----- - Client-Keystore-Passwort: Wenn Sie den generierten privaten Schlüssel mit einem Passwort gesichert haben, geben Sie dieses Passwort an.
- Zertifikatsbezeichnung: Geben Sie ein Label (oder einen eindeutigen Bezeichner) für das Zertifikat an, das für die Herstellung der SSL-Client-Verbindung zum Warteschlangenmanager verwendet werden soll.
- Peer-Name: Geben Sie das Muster für den Distinguished Name (DN) an, das zur Validierung des DN des vom Queue-Manager vorgelegten Zertifikats verwendet werden soll, z. B.
CN=John Smith, O=IBM, OU=Test, C=GB.
Beispiel für ausgefüllte Felder für eine Verbindung von App Connect zu IBM MQ unter Verwendung der Basisauthentifizierung

Beispiel für ausgefüllte Felder für eine Verbindung von App Connect zu IBM MQ unter Verwendung der Standard-TLS-Authentifizierung

Beispiel für ausgefüllte Felder für eine Verbindung von App Connect zu IBM MQ unter Verwendung der gegenseitigen TLS-Authentifizierung

- Erweitern Sie IBM MQ und klicken Sie auf Verbinden.
- Wählen Sie in der Liste Autorisierungsmethode Ihre bevorzugte Autorisierungsmethode aus und klicken Sie dann auf Weiter, um die Verbindungsfelder anzuzeigen.
- Geben Sie die Kontoinformationen ein und klicken Sie dann auf Verbinden.
Ein Konto wird erstellt in App Connect.
Bevor Sie das Konto, das in App Connect erstellte Konto in einer Bewegung verwenden, benennen Sie es in einen aussagekräftigen Namen um, der Ihnen hilft, es zu identifizieren. Um das Konto auf der Seite Anwendungen und APIs umzubenennen, wählen Sie das Konto aus, öffnen das Optionsmenü (⋮) und klicken auf Konto umbenennen.
IBM MQ aktions- und Ereignisknoten in App Connect
- Nachricht aus einer Warteschlange abrufen
Abb. 1. Felder für eine Get-Nachricht von einem Warteschlangen-Aktionsknoten

- Geben Sie im Feld Warteschlangenname den Namen der Warteschlange an, aus der die Nachricht abgerufen werden soll.
- Die Nachrichten-ID ist eine Byte-Zeichenkette, die dazu dient, eine Nachricht von einer anderen zu unterscheiden. Verwenden Sie das Feld Nachrichten-ID, um eine Nachricht mit einer bestimmten Nachrichten-ID abzurufen.
- Das Feld Korrelations-ID wird verwendet, um eine Gruppe von Nachrichten zu korrelieren. Wenn Sie beispielsweise eine gemeinsame Antwort-Warteschlange haben, hat jede Instanz einer Anwendung ihren eigenen eindeutigen Korrelations-ID-Wert. Die Instanz sendet diesen Wert an den entfernten Server und bittet darum, dass der Wert in der Antwort zurückgeschickt wird. Die Ursprungsanwendung kann einen MQGET (nach Korrelations-ID) ausgeben und nur ihre Nachrichten sehen. Die Felder Nachrichten-ID und Korrelations-ID werden verwendet, um Antwortnachrichten mit Anforderungsnachrichten zu korrelieren.
- Das Feld Nur Durchsuchen gibt an, ob die ursprüngliche Nachricht in der Warteschlange verbleiben soll, nachdem sie gelesen wurde. Der Standardwert ist No, womit die Nachricht nach dem Empfang gelöscht wird.
- Nachricht in einem Thema veröffentlichen
Abbildung 2: Felder für einen Aktionsknoten "Nachricht in einem Thema veröffentlichen

- Geben Sie im Feld Themenzeichenfolge den Namen des Themas an, in dem die Nachricht veröffentlicht werden soll.
- Wählen Sie im Feld Nachrichtentyp einen Nachrichtentyp aus Text oder Binary.
- Das Feld Nutzlast der Nachricht ist für die eigentliche Nutzlast.
- Falls erforderlich, können Sie einen oder mehrere MQMD-Header definieren, die als Dateneigenschaften mit den Datentypen Name, Zahl und String angegeben werden können. Um eine MQMD-Kopfzeile hinzuzufügen, klicken Sie auf Eigenschaft hinzufügen. Sie können dann Eigenschaften definieren und den Datentyp angeben.
Abb. 3 Hinzufügen von MQMD-Header-Eigenschaften
Hinweis: Kopfzeilen, die ein Byte-Array akzeptieren, müssen im Format Base64 übergeben werden.Klicken Sie auf Zuordnungen bearbeiten, um diese Eigenschaften als Felder anzuzeigen und ihre Werte anzugeben, wie im folgenden Beispiel gezeigt.Abbildung 4. Angeben von Werten für MQMD-Header-Eigenschaften 
- Nachricht in eine Warteschlange stellen
- Dieser Aktionsknoten hat die gleichen Felder wie der Aktionsknoten Nachricht in einem Thema veröffentlichen, mit der Ausnahme, dass Sie einen Warteschlangennamen anstelle einer Themenzeichenfolge angeben müssen.
- Neue Nachricht in einer Warteschlange
Abbildung 5. Felder für eine neue Nachricht auf einem Warteschlangen-Ereignisknoten

- Geben Sie im Feld Name der Warteschlange den Namen der Warteschlange an, die auf Nachrichten warten soll.
- Das Feld Nur Durchsuchen gibt an, ob die ursprüngliche Nachricht in der Warteschlange verbleiben soll, nachdem sie gelesen wurde. Der Standardwert ist No, was bedeutet, dass die Nachricht nach dem Lesen gelöscht wird.