[z/OS]

IBM MQ for z/OS サーバー接続チャネル

IBM® MQ for z/OS® SVRCONN チャネルは、チャネル認証を実装するか、TLS を使用してセキュリティー出口を追加しないと、セキュアではありません。 SVRCONN チャネルには、デフォルトではセキュリティー出口が定義されていません。

セキュリティー上の問題

SVRCONN チャネルは、 例えば SYSTEM.DEF.SVRCONN のように、定義された初期の状態ではセキュアではありません。 SVRCONN チャネルを保護するには、 SET CHLAUTH コマンドを使用してチャネル認証をセットアップするか、セキュリティー出口をインストールして TLS を実装する必要があります。

公開されているサンプル・セキュリティー出口を使用するか、自分でセキュリティー出口を作成するか、あるいはセキュリティー出口を購入しなければなりません。

ユーザー自身で SVRCONN チャネルの セキュリティー出口を記述する場合は、準備されている使用しやすいサンプルから始めることができます。

IBM MQ for z/OSでは、 hlq.SCSQC37S ライブラリーのメンバー CSQ4BCX3 は、C 言語で作成されたセキュリティー出口のサンプルです。 サンプル CSQ4BCX3 は、事前構成されて、hlq.SCSQAUTH ライブラリー内にも含められています。

CSQ4BCX3 サンプル出口を実装するには、コンパイルされたメンバー hlq.SCSQAUTH(CSQ4BCX3) を、CHIN プロシージャー内の CSQXLIB DD に割り振られたロード・ライブラリー にコピーします。 CHIN ではロード・ライブラリーを「プログラム管理」に設定しておく 必要があることにご注意ください。

CSQ4BCX3 がセキュリティー出口に なるように SVRCONN チャネルを変更します。

クライアントがその SVRCONN チャネルを使用して接続すると、 CSQ4BCX3 は、MQCD の RemoteUserIdentifierRemotePassword のペア、または IBM MQ for z/OS 9.1.4の場合は MQCSP の CSPUserIdPtrCSPPasswordPtr のペアを使用して認証します。 認証に成功すると、CSQ4BCX3 は RemoteUserIdentifierMCAUserIdentifier にコピーし、スレッドの ID コンテキストを変更します。

Long Term Support および IBM MQ for z/OS 9.1.4より前の Continuous Delivery の場合、クライアントがその SVRCONN チャネルを使用して接続すると、 CSQ4BCX3 は MQCD の RemoteUserIdentifierRemotePassword のペアを使用して認証を行います。 認証に成功すると、CSQ4BCX3 は RemoteUserIdentifierMCAUserIdentifier にコピーし、スレッドの ID コンテキストを変更します。

IBM MQ Java クライアントを作成する場合は、ポップアップを使用してユーザーを照会し、 MQEnvironment.userID および MQEnvironment.passwordを設定できます。 接続が確立されると、これらの値が渡されます。

機能セキュリティー出口があるため、接続が行われたときにユーザー ID とパスワードがプレーン・テキストでネットワークを介して送信されるという追加の考慮事項があります。また、後続の IBM MQ メッセージの内容も考慮されます。 TLS を使用して、この初期接続情報と IBM MQ メッセージの内容を暗号化できます。

IBM MQ Explorer SVRCONN チャネル SYSTEM.ADMIN.SVRCONN 以下のステップを実行します。
  1. hlq.SCSQAUTH(CSQ4BCX3) を、CHINIT プロシージャー内の CSQXLIB DD に割り振られたロード・ライブラリーにコピーします。
  2. ロード・ライブラリーがプログラム管理であることを確認します。
  3. セキュリティー出口 CSQ4BCX3 を使用するように SYSTEM ADMIN.SVRCONN を変更します。
  4. In IBM MQ Explorer, right-click the z/OS Queue Manager name, select 接続の詳細 > プロパティ > ユーザーID and enter your z/OS user ID.
  5. パスワードを入力して z/OS キュー・マネージャーに接続します。

詳細情報

出口 CSQ4BCX3 をプログラム管理の環境で機能するようにするには、CHIN アドレス・スペースにロードされたすべてのものが、プログラム管理ライブラリーからロードされている必要があります。 例えば、STEPLIB 内のすべてのライブラリーや、CSQXLIB DD で指定されているすべてのライブラリーなどです。 ロード・ライブラリーをプログラム制御として設定するには、 RACF® コマンドを発行します。 次の例では、ロード・ライブラリー名は MY.TEST.LOADLIB です。
RALTER PROGRAM * ADDMEM('MY.TEST.LOADLIB'//NOPADCHK)
SETROPTS WHEN(PROGRAM)REFRESH
CSQ4BCX3を実装するように SVRCONN チャネルを変更するには、次の IBM MQ コマンドを発行します。
ALTER CHANNEL(SYSTEM ADMIN.SVRCONN) CHLTYPE(SVRCONN) SCYEXIT(CSQ4BCX3)
上記の例では、使用されている SVRCONN チャネル名は SYSTEM ADMIN.SVRCONN です。

チャンネル終了の詳細については、チャンネル終了プログラムを参照のこと。