IBM への外部連携 MQ

IBM MQ IBM® は、 Sterling™ Order Management システムとあらゆる外部サードパーティシステムを統合するためのベース統合をサポートしています。

このタスクについて

重要: コンテナー化されたデベロッパーズ・ツールキットを使用している場合、このプロセスは完全に自動化されます。 Java™ Client ツールを使用して、SSL 上の IBM Sterling® Order Management System MQ キューをテストできます。詳細については、 Java Client ツールを使用して SSL 上の MQ キューをテストする を参照してください。

Sterling Order Management System 環境内の MQ サーバーへのアクセスは、相互認証を使用して構成されます。 MQ サーバーは、Digicert Signed CA 証明書とクライアント認証で保護されています。 クライアント認証は、ユーザーまたはクライアントがデジタル証明書を交換することにより、サーバーからサービスに安全にアクセスできるプロセスです。

MQへの外部統合のために任意のクライアントを使用して MQ サーバーに接続するには、 「セルフサービス」 を使用して生成された SSL/TLS クライアント証明書を使用し、Digicert Root を信頼してクライアントを構成する必要があります。

注:
  • MQ クライアントバージョン 9.1.x および 9.2.0 の SNI による SSL ハンドシェイクの問題を回避するには、 MQ クライアントバージョン 9.2.1 (CD) または 9.0.x (LTS) を使用してください。 MQ クライアントの 9.2.1 またはそれ以降のバージョンを使用するか、 9.0.x バージョンを使用する必要があります。
  • AMQP プロトコルによる外部統合は IBM MQ.
  • OMS MQ は REST API 経由では接続できない。

Sterling Order Management システムのキュー・マネージャーに接続する方法をビデオでご覧ください。

手順

  1. DigiCert Trusted Root Authority Certificates から、 DigiCert High Assurance EV Root CA および DigiCert Global Root G2 PEM 証明書をダウンロードする。
  2. ダウンロードした PEM 証明書を、 MQ Server に接続するアプリケーションのトラストストアに追加します。
    keytool -import -noprompt -alias ibmwebspheremq_om_qmgr -file <path to the pem certificate> 
    -keystore  <path of trustore>\truststore.jks -storepass <password of your choice>
  3. セルフサービスから MQ のクライアント証明書を取得します。 詳細については、「 受信証明書の生成 」を参照。
  4. この証明書を MQ クライアントの個人証明書ストアにインストールします。 次のコマンドを使用して、 p12 を鍵ストアに追加します。
    keytool -importkeystore -srckeystore cert-bundle-binary.p12 -srcstoretype pkcs12 -destkeystore 
    <path to the keystore>\keystore.jks
  5. MQに接続しようとしているアプリケーションにトラストストアと鍵ストアの両方を追加します。

次のタスク

以下の情報を使用して、接続を完了します。
  • 暗号: MQ サーバーは ANY_TLS1.2_OR_HIGHERで実行されます。 ANY_TLS1.2_OR_HIGHER に含まれている暗号は以下のとおりです。
    • ECDHE_RSA_AES_128_GCM_SHA256
    • ECDHE_RSA_AES_256_GCM_SHA384
    • TLS_RSA_WITH_AES_256_GCM_SHA384
    • ECDHE_ECDSA_AES_128_GCM_SHA256
    • ECDHE_ECDSA_AES_256_GCM_SHA384
    • TLS_AES_128_GCM_SHA256
    • TLS_AES_256_GCM_SHA384
    • TLS_CHACHA20_POLY1305_SHA256
    • TLS_AES_128_CCM_SHA256

    このリストにある任意の暗号を使用して、 MQに接続できます。 選択した暗号について、 JMS用のTLS CipherSpecs と IBM MQ クラスの CipherSuites から、あなたのJavaに相当する暗号スイートを見つける。

    例えば、クライアント・ソフトウェアが ECDHE_RSA_AES_128_GCM_SHA256をサポートしている場合、 IBM JRE の互換性のある暗号は SSL_ECDHE_RSA_WITH_AES_128_GCM_SHA256 であり、 Oracle JRE の互換性のある暗号は TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256です。

  • キュー・マネージャー名: OM_QMGR
  • チャネル: SYSTEM.TLS.SVRCONN
  • ホスト名: <tenant_code>-<env>-<envno>-mq.oms.supply-chain.ibm.com 例えば、テナント・コードが betapの場合、ホストは betap-dev-1-mq.oms.supply-chain.ibm.com です。
  • ポート: 15443

    追加引数

    MQ クライアント・バージョン 9.2.1(CD バージョン) 以降では、Java ベースのクライアントまたはツールに以下の JVM 引数を使用します。
    -Dcom.ibm.mq.cfg.SSL.outboundSNI=Hostname
    サード・パーティーのクライアントまたはツールが C または .NET (非管理対象) の場合は、 mqclient.ini ファイルの SSL スタンザで OutboundSNI=HOSTNAME を渡します。 この属性は、C、非管理対象 .NET、 IBM MQ classes for Java、 IBM MQ classes for Java、および IBM MQ classes for JMS クライアントのみが読み取ることができます。
    注: Oracle JDK パスを使用する場合は、以下の JVM 引数を使用してください。
    -Dcom.ibm.mq.cfg.useIBMCipherMappings=false