Benutzer-ID
Serviceintegrationsnachrichten enthalten zwei Benutzer-IDs: eine Systembenutzer-ID und eine Anwendungsbenutzer-ID. IBM MQ kann das Feld Benutzer-ID des IBM MQ-Nachrichtendeskriptors (MQMD, MQ Message Descriptor) anhand der in der Serviceintegrationsnachricht verwendeten Systembenutzer-ID definieren. Es sind zusätzliche Verarbeitungsschritte erforderlich, um die Anwendungsbenutzer-ID der Serviceintegration beizubehalten, wenn Interaktionen mit IBM MQ über einen IBM MQ-Server erfolgen.
- Systembenutzer-ID: Im Allgemeinen wird die Systembenutzer-ID auf die ID des Benutzers gesetzt, der die Nachricht erzeugt. Sie wird angegeben, wenn der Benutzer eine Verbindung zum Bus herstellt. Die in der Nachricht gespeicherte Systembenutzer-ID kann vom Anwendungscode nicht geändert werden.
- Anwendungsbenutzer-ID - Diese ID entspricht der Nachrichteneigenschaft "JMSXUserID" und kann vom Anwendungscode gesetzt werden.
IBM MQ kann so konfiguriert werden, dass das Feld für die Benutzer-ID des IBM MQ-Nachrichtendeskriptors anhand der in der Serviceintegrationsnachricht verwendeten Systembenutzer-ID definiert wird. Es gibt jedoch nur ein einziges Feld für Benutzer-IDs im MQMD. Wenn das Ziel die Verwendung von MQRFH2-Headern zulässt, wird die in der Nachricht enthaltene Anwendungsbenutzer-ID mit dem Schlüssel jsApiUserId in den Ordner <sib> des Headers RFH2 gestellt.
- Wenn der IBM MQ-Server so konfiguriert ist, dass er Benutzer-IDs anerkennt, wir die Systembenutzer-ID in der Serviceintegrationsnachricht aus der Benutzer-ID im MQMD kopiert.
- Wenn der IBM MQ-Server gemäß Konfiguration keine Benutzer-IDs anerkennt, wird die Systembenutzer-ID in der Serviceintegrationsnachricht auf den Namen des IBM MQ-Servers gesetzt, von dem die Nachricht empfangen wurde.
- IBM MQ-Server QM1
- Busmember des Typs "IBM MQ-Server", dessen Attribut trustUserIds den Wert FALSE hat
- Warteschlangenziel (Q1), das dem Busmember des Typs "IBM MQ-Server" zugeordnet ist
Unabhängig davon, wie die Systembenutzer-ID der Serviceintegrationsnachricht gesetzt wird, die Anwendungsbenutzer-ID wird immer aus dem RFH2-Wert des Schlüssels "jsApiUserId" gebildet. Wenn dieser Schlüssel nicht vorhanden ist, weil das Wertepaar nicht im Ordner <sib> des Headers "RFH2" enthalten ist oder weil die Nachricht keinen Header "RFH2" enthält, wird dieses Feld nicht gesetzt.
Da Sicherheitsbenutzer-IDs im Nachrichtendeskriptor "MQMD" transportiert werden, sind sie in der Länge auf 12 Zeichen beschränkt. Längere Benutzer-IDs werden abgeschnitten.