チャネルの新規 CHLAUTH 規則の作成
チャネルの一般的なシナリオのいくつかと、そうしたシナリオを実現するための CHLAUTH 規則の例を示します。独自の CHLAUTH 規則を作成する時に役立ちます。
特定の IP アドレス範囲からの特定のチャネルへのアクセスのみを許可する
- あらゆる場所からのチャネルへのアクセスを禁止する
- 特定の IP アドレスまたはアドレス範囲からのアクセスを許可する
runmqsc:
SET CHLAUTH('APP2.CHAN') TYPE(ADDRESSMAP) ADDRESS('*') USERSRC(NOACCESS)
WARN(NO) ACTION(ADD)
SET CHLAUTH('APP2.CHAN') TYPE(ADDRESSMAP) ADDRESS('9.95.100.1-5')
USERSRC(MAP) MCAUSER('mqapp2') ACTION(ADD)これにより、指定された特定の IP アドレス範囲から接続が行われた場合にのみ、APP2.CHAN チャネルの開始が許可されます。
MCAUSER として接続するユーザーは mqapp2にマップされるため、そのユーザーの IBM® MQ OAM 権限を取得します。
特定のチャネルに対し、すべてのユーザーをブロックするが、特定のユーザーにのみ接続を許可する
- すべての
MQ-admin*ユーザーによるすべてのチャネルへのアクセスを禁止 - すべての SYSTEM.* に対するアクセス権限がありません すべてのユーザーによるチャネル
- SYSTEM.ADMIN.SVRCONN チャネルへのアクセスを許可 (非
MQ-adminユーザー)
このシナリオでは、チャネル MY.SVRCONN へのアクセスには、デフォルトの CHLAUTH 規則が設定されています。
# block all users
SET CHLAUTH('MY.SVRCONN') TYPE(ADDRESSMAP) ADDRESS('*') USERSRC(NOACCESS)
DESCR(''block all'') WARN(NO) ACTION(ADD)
# override - no MQM admin rule
SET CHLAUTH('MY.SVRCONN') TYPE(BLOCKUSER) USERLIST('nobody') DESCR('override
no mqm admin rule') WARN(NO) ACTION(ADD)
# allow johndoe userid
SET CHLAUTH('MY.SVRCONN') TYPE(USERMAP) CLNTUSER('johndoe')
USERSRC(CHANNEL) DESCR('allow johndoe userid') ACTION(ADD)このコードの最初の部分は、すべてのユーザーの MY.SVRCONN への接続をブロックし、接続が特定のユーザー ID johndoe から行われた場合にのみ、MY.SVRCONN チャネルの開始を許可します。
チャネル johndoe で接続するユーザーは、 IBM MQ オブジェクトの IBM MQ OAM 権限に使用されます。 したがって、ユーザー ID には適切な IBM MQ 権限が必要です。
USERSRC(MAP) MCAUSER('mquser1')これを USERSRC(CHANNEL) の代わりに使用します。受信側チャネルおよび送信側チャネルに対する CHLAUTH の使用
CHLAUTH 規則を使用して受信側チャネルと送信側チャネルのセキュリティーを強化し、受信側チャネルへのアクセスを制限できます。 CHLAUTH 規則に対して追加または変更を行う場合、更新された CHLAUTH 規則はチャネルの開始時にのみ適用されることに注意してください。そのため、チャネルが既に実行中の場合は、CHLAUTH の更新を適用するために、チャネルを停止してから再開する必要があります。
CHLAUTH 規則は任意のチャネルで使用できますが、いくつかの制約事項があります。 例えば、USERMAP 規則は SVRCONN チャネルにのみ適用されます。
# First you could lock down the channel by disallowing all
# for channel 'TO.MYSVR1', RCVR channel
SET CHLAUTH('TO.MYSVR1') TYPE(ADDRESSMAP) ADDRESS('*') USERSRC(NOACCESS)
DESCR('Back-stop rule')
# Then you could allow this channel to be started
SET CHLAUTH('TO.MYSVR1') TYPE(ADDRESSMAP) ADDRESS('192.168.1.134') USERSRC(MAP)
MCAUSER('mqapp') ACTION(ADD)
# Lock down all access:
SET CHLAUTH('TO.MYSVR1') TYPE(ADDRESSMAP) ADDRESS('*') USERSRC(NOACCESS)
DESCR('Back-stop rule')
# Then allow access from queue manager MYSVR2 and from a particular ipaddress:
SET CHLAUTH('TO.MYSVR1') TYPE(QMGRMAP) QMNAME('MYSVR2') USERSRC(MAP)
MCAUSER('mqapp') ADDRESS('192.168.1.134') ACTION(ADD)