ibm integration busv9...

15
IBM Integration Bus V9 ISE Webプラットフォーム 2013年12月27日 導入・構成ガイド 導入・構成ガイド 《付録》 2 目次 《付録》 当資料は、UNIX/Linux/Windows環境のIBM Integration Bus V9.0.0.0を前提に作成しています。 IIB V9.0.0.0の導入や基本設定は本体の資料をご参照ください。 データベースとの接続 ODBC接続のセットアップ (UNIX/Linux) ODBC接続定義の作成 (Windows) データベースの接続ユーザーの設定 (UNIXWindows 共通) セキュリティ管理 ブローカーQMGRへのリモート接続におけるセキュリティ ブローカーQMGRへの接続での MQRC_NOT_AUTHORIZEDエラーに対応する方法 ブローカー管理セキュリティ Webユーザー・インターフェースの使用 Webユーザー・インターフェース概要 Webユーザー・インターフェースのセットアップ ブローカーのチューニング JVMヒープサイズの拡張 スタックサイズの拡張 MQのチューニング・パラメータ

Upload: others

Post on 02-Mar-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

IBM Integration Bus V9

ISE Webプラットフォーム

2013年12月27日

導入・構成ガイド導入・構成ガイド《付録》

2

目次 《付録》

当資料は、UNIX/Linux/Windows環境のIBM Integration Bus V9.0.0.0を前提に作成しています。

IIB V9.0.0.0の導入や基本設定は本体の資料をご参照ください。

データベースとの接続ODBC接続のセットアップ (UNIX/Linux)ODBC接続定義の作成 (Windows)データベースの接続ユーザーの設定 (UNIX、Windows

共通)

セキュリティ管理ブローカーQMGRへのリモート接続におけるセキュリティ

ブローカーQMGRへの接続でのMQRC_NOT_AUTHORIZEDエラーに対応する方法

ブローカー管理セキュリティ

Webユーザー・インターフェースの使用Webユーザー・インターフェース概要

Webユーザー・インターフェースのセットアップ

ブローカーのチューニングJVMヒープサイズの拡張

スタックサイズの拡張

MQのチューニング・パラメータ

Page 2: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

3

データベースとの接続ブローカーからユーザー・データベースに接続する場合は、データベースへのODBC接続定義が必要

メッセージ・フローからは下記のノードを通してデータベースへのアクセスが可能(Computeノード, Databaseノード, DatabaseInputノード, DatabaseRetrieveノード, DatabaseRouteノード,Filterノード, JavaComputeノード, Mappingノード)JavaComputeノードなど一部のノードではJDBC接続を利用

UNIX/LinuxでのODBC接続のセットアップの流れIIB V9.0ではUNIX/Linuxにて、データ・ベースへのODBC接続にunixODBC ドライバー・マネージャーを使用

IBM Integration ODBC Database Extenderが unixODBC ドライバー・マネージャーを提供サイレント・モードでのIIB コンポーネントのインストール後は自動的にインストールされる自動的にインストールされない場合は、以下のガイドに従い手動でインストールするhttp://pic.dhe.ibm.com/infocenter/wmbhelp/v9r0m0/topic/com.ibm.etools.mft.doc/bh13420_.htm

ODBC接続情報をODBCファイル(odbc.ini / odbcinst.ini)に定義製品としてサンプルODBCファイルを提供

–サンプルodbc.ini: install_dir/ODBC/unixodbc に提供–サンプルodbcinst.ini : install_dir/ODBC/unixodbc に提供

マイグレーションの場合もIIB V9.0で提供されるサンプルを基に新規に設定する

(1) rootユーザーでサンプルODBCファイルを適当なディレクトリにコピーし、アクセス権限設定を行う

cp <IIB導入ディレクトリ>/ODBC/unixodbc/odbc.ini /var/mqsi/odbc/odbc.ini

cp <IIB導入ディレクトリ>/ODBC/unixodbc/odbcinst.ini /var/mqsi/odbc/odbcinst.ini

chown mqm:mqbrkrs /var/mqsi/odbc/odbc.ini

chown mqm:mqbrkrs /var/mqsi/odbc/odbcinst.ini

chmod 755 /var/mqsi/odbc/odbc.ini

chmod 755 /var/mqsi/odbc/odbcinst.ini

データベースとの接続

4

(2) odbc.ini に接続するユーザー・データベースのエントリを追加

[ODBC Data Sources]DB2DB=IBM DB2 ODBC DriverORACLEDB=DataDirect 7.0 ODBC Oracle Wire ProtocolORACLERACDB=DataDirect 7.0 ODBC Oracle RAC Wire ProtocolORACLESSLDB=DataDirect 7.0 ODBC Oracle SSL Wire ProtocolSYBASEDB=DataDirect 7.0 ODBC Sybase Wire ProtocolSYBASEDBUTF8=DataDirect 7.0 ODBC Sybase UTF8 Wire ProtocolSQLSERVERDB=DataDirect 7.0 ODBC SQL Server Wire ProtocolINFORMIXDB=IBM Informix ODBC DriverSOLIDDB_DB=IBM Solid DB ODBC DriverIDSDB=IBM Informix Data Server Driver for ODBC and CLIデータベース名=IBM DB2 ODBC Driver

[DB2DB]DRIVER=<Your DB2 install directory>/lib64/db2o.oDescription=IBM DB2 ODBC DatabaseDatabase=DB2DB

[データベース名]DRIVER=/opt/IBM/db2/V9.7/lib64/db2o.oDescription=IBM DB2 ODBC DatabaseDatabase=データベース別名

::

[ODBC]InstallDir=/<IIBインストールディレクトリ>/ODBC/V7.0UseCursorLib=0IANAAppCodePage=4UNICODE=UTF-8

同一データベース製品のセクションをコピーして、データベース名を変更

同一データベース製品のエントリをコピーして、データベース名を変更

InstallDirに<IIB導入Dir>を記入

データベースとの接続

Driverに<DB2導入Dir>の絶対パスを記入

DB2以外のデータベース、及びデータベースの接続定義について詳細は下記を参照http://pic.dhe.ibm.com/infocenter/wmbhelp/v9r0m0/topic/com.ibm.etools.mft.doc/bk58060_.htm

例) AIXでDB2の接続定義を追加する場合

Page 3: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

5

(3) 必要に応じてodbcinst.ini をカスタマイズ

参考. データベースへの接続確認方法上記でセットアップしたデータベースへの接続はmqsicvpコマンドを用いて確認することができます。

[ODBC];# To turn on ODBC trace set Trace=yesTrace=noTraceFile=<トレースの出力先ディレクトリ>/odbctrace.outThreading=2

TraceFileにトレース出力に適切なディレクトリを記入

データベースとの接続

C:¥Program Files¥IBM¥MQSI¥9.0.0.0>mqsicvp IB9NODE -n DBINPUT

BIP8270I: データ・ソース 'DBINPUT' にユーザー 'testuser' として接続しました。 データ・ソースのプラットフォームは、'DB2/NT64'、バージョン '09.07.0000' です。===========================databaseProviderVersion = 09.07.0000driverVersion = 09.07.0000driverOdbcVersion = 03.51driverManagerVersion = 03.80.7601.0000driverManagerOdbcVersion = 03.80.0000databaseProviderName = DB2/NT64datasourceServerName = DB2databaseName = DBINPUTodbcDatasourceName = DBINPUTdriverName = DB2CLI.DLL

:(以下略)

BIP8071I: コマンドが完了しました。

<例> WindowsのIIBコマンド・コンソールでブローカーIP9NODEからデータベースDBINPUTへの接続を確認

mqsicvp ブローカー名 –n データソース名

6

使用するデータベース製品に応じた環境セットアップの実行データ・ベース・アクセス用のライブラリをライブラリ検索パスに追加

–DB2、solidDB、Infomixを使用の場合のみ–AIXではLIBPATH、HP-UXではSHLIB_PATH、Solaris/LinuxではLD_LIBRARY_PATHに設定

データベース製品が提供するデータベース・セットアップ・スクリプトを実行作成したODBCファイルをODBCINI / ODBCSYSINI環境変数で指定

–odbc.iniをODBCINIで指定–odbcinst.iniをODBCSYSINIで指定

※ログオン時に環境セットアップが自動設定されるように、IIB管理ユーザーの.profileに登録することを推奨

<DB2の例>

. <インスタンス・ホーム>/sqllib/db2profile

LIBPATH=<インスタンス・ホーム>/sqllib/lib64:${LIBPATH}

ODBCINI=/var/mqsi/odbc/odbc.ini

ODBCSYSINI=/var/mqsi/odbc/odbcinst.ini

データベースとの接続

Page 4: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

7

ODBC接続定義の作成 (Windows)以下の手順はデータベースの作成後に

(1)「コントロール・パネル」 ->「管理ツール」 -> 「データソース(ODBC)」を実行

「システムDSN」タブを選択し、「追加」ボタンをクリック

(2)「データソースの新規作成」画面でデータベース製品に対応するドライバを選択し、「完了」ボタンをクリック

(3) 「ODBCドライバ」画面にデータソース名などの項目を設定

(4) Oracle、SybaseではWindowsレジストリのODBC.INIサブキーにエントリの追加手順(3)、(4)の詳細は、InfoCenterを参照

http://pic.dhe.ibm.com/infocenter/wmbhelp/v9r0m0/topic/com.ibm.etools.mft.doc/ah14442_.htm

データベース 対応ドライバ

DB2 IBM DB2 ODBC DRIVER

Informix IBM INFORMIX ODBC DRIVER

SQL Server

SQL Native Client (SQL Server 2005の場合)SQL Native Client 10.0 (SQL Server 2008の場合)

Oracle IBM Integration Bus (9.0.0.0) DataDirect Technologies 7.0 [64-BIT/32-BIT]※ Oracle Wire Protocol

Sybase IBM Integration Bus (9.0.0.0) DataDirect Technologies 7.0 [64-BIT/32-BIT]※ Sybase Wire Protocol

solidDB IBM solidDB - (Unicode) DRIVER

<DB2の場合の設定画面>

データベースとの接続

※使用しているIIB 64ビット版/32ビット版に応じたドライバーが導入されるので、そちらを選択

8

データベースの接続ユーザーの設定(UNIX、Windows共通)

mqsisetdbparmsコマンドを実行して、接続するデータベース名と接続時に使用するユーザー名、パスワードを設定

データベースとの接続

mqsisetdbparms ブローカー名 –n データソース名 –u ユーザー名 –p パスワード

Page 5: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

9

ブローカーQMGRへのリモート接続におけるセキュリティ

MQクライアント接続でブローカーQMGRにアクセスするアプリケーションでのセキュリティ IBM Integration ツールキットやIBM Integration エクスプローラーはMQクライアント・アプリケーションの代表例

上記はデフォルトでサーバー接続チャネル”SYSTEM.BKR.CONFIG”を使用

アプリケーションを起動したユーザーが通常MQクライアント・ユーザーとして権限チェックされる

ブローカーQMGRがMQ V7.1以降の場合、クライアント接続に対するセキュリティが厳しくなることがあるので注意 IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

MQ V7.1以降で新規作成したQMGRはチャネル・アクセス制御が使用可能なため、MQRC_NOT_AUTHORIZED(2035)エラーで接続

できないことがある

– mqmグループ、Administratorsグループに所属する特権ユーザーからの接続

– ”SYSTEM.ADMIN.SVRCONN”以外のSYSTEMチャネルを用いた接続

下記のキュー・マネージャーはチャネル・アクセス制御が使用不可に設定済み

– V7.1より前のバージョンからマイグレーションしたキュー・マネージャー

– IIB V9.0でブローカー作成と同時に作成したキュー・マネージャー

ブローカーQMGRにMQクライアント・ユーザーに必要なアクセス権限を付与する

セキュリティ管理

キュー・マネージャー

ブローカー

クライアント・ユーザーの権限チェック

IBM Integrationエクスプローラー

IBM Integrationツールキット

MQクライアント接続

MQクライアント接続

開発者端末

IIB管理端末

ユーザー:wmbadm

ユーザー:wmbdev

10

ブローカーQMGRへの接続でのMQRC_NOT_AUTHORIZEDエラーに対応する方法

以下のいずれかにより対応する

方法1. チャネル・アクセス制御を不可にし、MQ V7.1より前と同等のセキュリティにするキュー・マネージャーはCHLAUTH(DISABLED)に変更、特権ユーザーやSYSTEMチャネルに対するブロックを解除

方法2. チャネル・アクセス制御を機能させ、クライアント・ユーザーに対する認証レコードを作成キュー・マネージャーはCHLAUTH(ENABLED)を前提とする

クライアント・ユーザーと同名のユーザーをIIBブローカー稼働マシンに定義した上でSYSTEMチャネルのアクセスを許可するチャネル認証レコードを

作成

クライアント接続にSYSTEM.BKR.CONFIGチャネルを使用する場合の例

・内部的に使用する応答キューに対し、Display, Inquire, Put, Get権限を付与

・MQSCでチャネル認証レコードを定義

チャネル・アクセス制御について、詳しくは次ページ以降に記載

setmqaut -m <ブローカーQMGR名> -n SYSTEM.MQEXPLORER.REPLY.MODEL -t queue -p <クライアント・ユーザー> +dsp +inq +put +get

セキュリティ管理

SET CHLAUTH('SYSTEM.BKR.CONFIG') TYPE(ADDRESSMAP) ADDRESS('<クライアント端末のIPアドレス>') MCAUSER('<クライアント・ユーザー>') ACTION(ADD)

Page 6: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

11

チャネル・アクセス制御

チャネル認証レコードを使用して、チャネル・レベルで接続システムへのアクセスを制御

接続要求に対するブロックの実施

接続元の接続情報に応じて、接続をブロックすることが可能

接続条件に応じた特定ユーザーへのマッピングの実施

接続元の接続情報に応じて、特定の権限ユーザーへのマッピングが可能

マッピングに利用する権限ユーザーは、以下を指定可能– チャネル認証レコードのMCAUSER属性に指定したユーザー

– 使用チャネルの接続認証に利用されるユーザー

– NOACCESS (設定すると、接続のブロックと同義)

アクセス制御に使用可能な接続情報IPアドレス

ユーザーID(クライアント接続のみ)

キュー・マネージャー名(サーバー接続のみ)

SSLまたはTLSのDN

V7.1で新規作成したキュー・マネージャーは、デフォルトでチャネル・アクセス制御が有効

デフォルトで作成されるチャネル認証レコードにより、特権ユーザーでのクライアント接続はブロックMQエクスプローラによって使用されるチャネルを除き、全てのSYSTEMチャネルを使用した接続もブロック

マイグレーションしたキュー・マネージャーは、デフォルトではチャネル・アクセス制御は無効

<参考>

12

チャネル・アクセス制御の使用可否をキュー・マネージャー属性(CHLAUTH)で指定

V7.1環境で新規作成したキュー・マネージャーはデフォルトで有効

マイグレーションしたキュー・マネージャーは、デフォルトではCHLAUTH(DISABLED)

要件に応じ、チャネル認証レコードを作成

もしくは、PCFコマンド(Set Channel Authentication Record)

設定するチャネル認証のタイプをTYPEパラメーターで指定

アクセス制御に使用可能な接続情報と設定可能なチャネル認証レコードのタイプ

チャネル・アクセス制御

ALTER QMGR CHLAUTH (ENABLED)

SET CHLAUTH(chl_name) TYPE(type) 各パラメータ

設定可能なチャネル認証レコードのタイプ (TYPE属性で指定)使用可能な接続情報

SSLPEERMAPSSLPEERMAP (*)SSLまたはTLSのDN名

QMGRMAPQMGRMAP (*)キュー・マネージャー名(サーバー接続のみ)

USERMAPBLOCKUSER

USERMAP (*)

ユーザーID(クライアント接続のみ)

ADDRESSMAPBLOCKADDR

ADDRESSMAP (*)

IPアドレス

特定ユーザーへマッピングしたい場合接続要求をブロックしたい場合

(*)のケースではマッピングするユーザーにNOACCESSを指定

<参考>

Page 7: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

13

キュー・マネージャー作成時または既存キュー・マネージャーのマイグレーション時に自動生成されるチャネル認証レコード

クライアント接続での特権ユーザーによるアクセスをブロック

MQエクスプローラによって使用されるチャネルを除き、全てのSYSTEMチャネルを使用した接続をブロック

デフォルトで生成されるチャネル認証レコード

dis chlauth(*)

3 : dis chlauth(*)

AMQ8878: チャネル認証レコードの詳細を表示します。

CHLAUTH(SYSTEM.ADMIN.SVRCONN) TYPE(ADDRESSMAP)

ADDRESS(*) USERSRC(CHANNEL)

AMQ8878: チャネル認証レコードの詳細を表示します。

CHLAUTH(SYSTEM.*) TYPE(ADDRESSMAP)

ADDRESS(*) USERSRC(NOACCESS)

AMQ8878: チャネル認証レコードの詳細を表示します。

CHLAUTH(*) TYPE(BLOCKUSER)

USERLIST(*MQADMIN)

[デフォルトで生成されるチャネル認証レコードの表示結果]

<参考>

14

ブローカーに対するセキュリティ設定は以下の2種類を設定

ブローカーの管理操作コマンドに必要な権限

ブローカーの作成/削除、開始/停止など管理コマンドを実行するために必要な権限

OSのグループに所属させることで権限を付与する

ブローカー管理セキュリティ

ブローカーとそのリソースに対する操作を実行するためのユーザー権限を制御

–セキュリティ機能のアクティブ化が必要(デフォルトではブローカー管理セキュリティはインアクティブ)

–MQベースの権限設定でブローカー操作権限を制御

ユーザーは、ブローカーに接続するための権限を持つことが前提

以下の操作に対する権限をチェック

–メッセージ・ブローカー・ツールキットからブローカーに対する操作

–メッセージ・ブローカー・エクスプローラーからブローカーに対する操作

–統合API(旧CMP API)を使用したJavaプログラムからブローカーに対する操作

–コマンドを使用したブローカーに対する操作

ブローカー管理セキュリティのアクティブ/インアクティブはブローカーのプロパティで設定

セキュリティ管理

キュー・マネージャー

管理操作コマンド

ブローカー

IBM Integrationエクスプローラー

IBM Integrationツールキット

セキュリティ機能をアクティブ時、ブローカーの操作権限をチェック

(ブローカーに接続するための権限を持つことが前提)

ブローカー管理セキュリティ

操作

操作

Page 8: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

15

ブローカーの管理操作コマンドと必要な権限

下記コマンドを用いてブローカーの管理操作を行うユーザーは、以下のグループへの所属が必要

セキュリティ管理

主要な管理操作 コマンド AIX、HP-UX、Solaris、Linux Windows

作成・削除 mqsicreatebroker

mqsideletebroker

mqbrkrsグループ、および、mqmグループ 作成 : Administratorsグループ削除 : mqbrkrsグループ、および、mqmグループ

起動・停止 mqsistartmqsistop

mqbrkrsグループmqmグループへの所属はオプション(コンポーネントの起動・停止に合わせて、QMGRを起動・停止するときは必要)rootユーザーはmqbrkrsグループに所属していなく

ても停止可能

mqbrkrsグループmqmグループへの所属はオプション(コンポーネントの起動・停止に合わせて、QMGRを起動・停止するときは必要)

属性変更 mqsichangebroker mqbrkrsグループ mqbrkrsグループ

mqsichangeproperties mqbrkrsグループ mqbrkrsグループ

mqsireportproperties mqbrkrsグループ mqbrkrsグループ

トレース設定 mqsichangetracemqsireporttracemqsireadlogmqsiformatlog

mqbrkrsグループ mqbrkrsグループ

管理操作コマンド

ブローカー

UNIX: mqbrkrs, mqmグループに所属Windows: Administrator, mqbrkrs, mqmグループに所属

ブローカーの作成・削除/起動・停止

16

ブローカー管理セキュリティブローカーとそのリソースに対する操作を実行するためのユーザ権限を、MQベースの権限設定を利用し制御

セキュリティ機能のアクティブ化が必要

セキュリティ機能のアクティブ/インアクティブ化

ブローカー管理セキュリティによるアクセス制御を実施するかどうかはブローカーのプロパティで設定

–デフォルトはインアクティブ(アクセス制御なし)

–ブローカー作成時の指定、および作成後の変更が可能

ブローカー作成時にアクティブ化する場合

–指定しない場合は、インアクティブ

作成後の設定変更

–アクティブ化

–インアクティブ化

–コマンドはブローカー停止時に実行

–アクティブ化する際にはMQのキューが作成されるため、コマンド実行ユーザは mqbrkrs グループだけでなく、mqm グループのメンバーでもある必要がある

セキュリティ管理

mqsicreatebroker BrokerName –q QmgrName –s active

mqsichangebroker BrokerName –s active

mqsichangebroker BrokerName –s inactive

Page 9: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

17

ブローカーに接続するための権限(前提)

ブローカー管理セキュリティのアクティブ/インアクティブに関わらず、ブローカーに接続するために前提となるMQ権限

ブローカー操作権限

MQ権限(Inquire、Put、Set)が、それぞれブローカーに対する各操作の権限に対応

以下のMQのキュー(権限キュー)に対してユーザ/グループのMQ権限を設定することで、ブローカー操作権限を設定

–ブローカー・レベルの権限キュー : SYSTEM.BROKER.AUTH

–実行グループ・レベルの権限キュー : SYSTEM.BROKER.AUTH.EGName (EGNameは実行グループ名)

ユーザが操作を実施する際、ブローカーは操作対象の権限キューにそのユーザ/グループに対する適切な権限が設定されているか確認

MQ権限 ブローカー権限 操作内容

Inquire Read 表示

Put Write 設定、作成/削除、デプロイ

Set Execute 開始/停止

セキュリティ管理

MQオブジェクト MQ権限

キューマネージャー Connect

Inquire

SYSTEM.BROKER.DEPLOY.QUEUE Put

SYSTEM.BROKER.DEPLOY.REPLY Put + Getキュー・マネージャー

ブローカー

ブローカーに接続するための前提となるMQ権限

IBM Integrationエクスプローラー

IBM Integrationツールキット

キュー・マネージャー

ブローカー

権限のチェック

権限キュー

接続

操作

接続

操作

IBM Integrationエクスプローラー

IBM Integrationツールキット

18

GUIツールからの各操作に必要な権限

下表は各操作に必要なMQ権限

操作を許可する場合は、対応する権限を権限キューに付与することが必要

設定例

グループwmbdevgpに対してデプロイ権限を付与する場合

操作 SYSTEM.BROKER.AUTH SYSTEM.BROKER.AUTH.EGName

ブローカー・プロパティの表示

構成可能サービス・プロパティの表示

実行グループのリスト表示

Read 不要

ブローカー・プロパティの設定

構成可能サービスの作成/削除

構成可能サービス・プロパティの設定

実行グループの作成/削除

実行グループの名前変更

Read + Write 不要

実行グループ・プロパティの表示

デプロイ済みオブジェクトのリスト表示

Read Read

実行グループ・プロパティの設定

デプロイ

実行グループからのリソース削除

Read Write

実行グループの開始/停止

メッセージフローの開始/停止

Read Execute

セキュリティ管理

setmqaut -m QMName -t queue -n SYSTEM.BROKER.AUTH -g wmbdevgp +inqsetmqaut -m QMName -t queue -n SYSTEM.BROKER.AUTH.EGName -g wmbdevgp +inq +put

Page 10: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

19

コマンドでの各操作に必要な権限各操作に必要なMQ権限

コマンド SYSTEM.BROKER.AUTH SYSTEM.BROKER.AUTH.EGName

mqsimode Read(参照の場合)

Write(変更の場合)

不要

mqsicreateexecutiongroup

mqsideleteexecutiongroup

Read + Write 不要

mqsilist Read Read

mqsideploy

mqsireloadsecurity

Read Write

mqsistartmsgflow *1

mqsistopmsgflow *1

Read Execute

*1 オプションの指定によって必要な権限は異なります。詳細はマニュアルのコマンド解説でご確認ください。

セキュリティ管理

20

セキュリティ設定例(ブローカーの構成)

例として下記のような開発環境、本番環境を持つことを想定

セキュリティ管理

ブローカー

IBM Integrationツールキット

UT環境 開発者端末

ブローカー

ブローカー稼動マシン(IT用) ブローカー稼動マシン(本番用)

管理者端末(開発環境)

ブローカー稼動マシン(ST用)

テスト済み開発物の移送

IBM Integrationエクスプローラー

開発物IBM Integration

エクスプローラー

開発物

ブローカー ブローカー ブローカー

管理者端末(本番環境)

IBM Integrationエクスプローラー

開発物

本番環境開発環境

テスト済み開発物の移送

Page 11: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

21

セキュリティ設定例(ユーザーの種類)IIB管理者: wmbadm

ブローカー稼動マシン上でmqbrkrs/mqmグループに所属させ、全権限を付与

IIB管理端末用ユーザー: wmbuser IIB管理端末上にユーザーを作成

ブローカー・キューマネージャーへのアクセス・ユーザーとなるため、ブローカー稼動マシン上にも同名ユーザーIDを作成し、mqbrkrs/mqmグループに所属させ、全権限を付与

開発者: wmbdev01~nn各開発者端末にそれぞれユーザーを作成

IT環境の特定の実行グループにはデプロイ/参照可能とする

ブローカー稼動マシン(IT環境)上に同名ユーザーIDと所属グループ(wmbdevgp)を作成し、wmbdevgpにデプロイ/参照権限を付与

※サーバー接続チャネルのMCAUSERを設定する場合は、その指定ユーザーIDのみを作成し、wmbdevgpに所属させる

前提 IIB管理端末からの接続と開発者端末からの接続では

異なるサーバー接続チャネルを利用する

権限を限定するユーザーに対しては、管理者のユーザーIDや

利用するサーバー接続チャネル名は隠蔽されているものとする

厳密なアクセス制御を行う場合には、チャネル・アクセス制御及びチャネルExitやSSLを利用する

セキュリティ管理

IBM Integrationツールキット

・wmbdev01

・wmbadm(mqbrkrs、mqm)・wmbuser(mqbrkrs、mqm)

IBM Integrationエクスプローラー

・wmbuser

IBM Integrationエクスプローラー

開発者端末

IIB管理端末

ブローカー稼動マシン(ST環境)

・wmbadm(mqbrkrs、mqm)・wmbuser(mqbrkrs、mqm)・wmbdev01 ~(wmbdevgp)

キュー・マネージャー

ブローカー

ブローカー稼動マシン(IT環境)

(ブローカー・キューマネージャーへの接続に必須の設定)setmqaut -m QMName -t qmgr -g wmbdevgp +connect +inqsetmqaut -m QMName -t queue -n SYSTEM.BROKER.DEPLOY.QUEUE -g wmbdevgp +putsetmqaut -m QMName -t queue -n SYSTEM.BROKER.DEPLOY.REPLY -g wmbdevgp +put +get

(デプロイ/参照権限を付与する設定)setmqaut -m QMName -t queue -n SYSTEM.BROKER.AUTH -g wmbdevgp +inqsetmqaut -m QMName -t queue -n SYSTEM.BROKER.AUTH.EGName -g wmbdevgp +inq+put

ブローカー稼動マシン(IT用)で実施する開発者グループに対する権限設定コマンド

キュー・マネージャー

ブローカー

22

セキュリティ設定例(ブローカー管理セキュリティ)(1) rootユーザーでログインし、接続を許可するユーザーを作成

接続許可を与えるユーザーをIIB接続用のグループに所属させる

(2)ブローカー管理セキュリティのアクティブ化IIB管理者ユーザーで下記のコマンドを実行 (Windows環境では、IIBのコマンド・コンソールから実行)

(3)OAMのアクセス権限設定IIB管理者ユーザーで下記のコマンドを実行

・ブローカーアクセス権限の付与

・IIBコンポーネントの管理操作権限の付与

IIBコンポーネントのプロパティ表示やデプロイ作業などの管理操作の権限付与を、要件に応じて実施

セキュリティ管理

setmqaut -m QMName -t qmgr -g IIB接続用グループ +connect +inq

setmqaut -m QMName -t queue -n SYSTEM.BROKER.DEPLOY.QUEUE –g IIB接続用グループ +put

setmqaut -m QMName -t queue -n SYSTEM.BROKER.DEPLOY.REPLY –g IIB接続用グループ +put +get

mqsichangebroker ブローカー名 –s active

Page 12: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

23

Webユーザー・インターフェースの使用

Webインターフェースを通して、ブローカー・コンポーネントの管理が可能

WMB V8.0.0.1よりIntegration Busエクスプローラー(管理用)、ツールキット(開発用)に加え新たな管理IFが追加

Web管理コンソールではブローカー・コンポーネントのステータス表示、実行グループ/アプリケーション/メッセージフローの起動・停止、統計情報の収集開始・停止・統計データの表示等が可能

Webユーザー・インターフェース・サーバーを提供

HTTP/HTTPSリクエストを受け付け、要求された管理操作を実行する

Webインターフェースを使用した管理手段

Web管理コンソール(Webブラウザ)からの管理

WebSphere Application Server(WAS)のIntegration Solution Consoleからの管理

REST管理APIを使用した管理

ロール・ベース・セキュリティによるアクセス制御ロールに応じてWebインターフェースからブローカーへのアクセスを制御

Webブラウザ

ブローカー

実行グループ

メッセージフロー

メッセージフロー

ツールキット

Integration Busエクスプローラー

MQ

WebユーザI/F Server

HTTP(S)

MQクライアントクライアント・アプリケーション

WAS

HTTP(S)

HTTP(S)

ポート: 4414(default)

24

Webユーザー・インターフェースの使用

Webユーザー・インターフェース(Web UI)のセットアップ

WebユーザーIFサーバーはデフォルトでブローカーと共に起動・停止

WMB V8.0.0.1以降、デフォルトでWebサーバーのポート4414番がブローカーの起動と共にオープン

–WMB V8.0.0.0より下位からマイグレーションしたブローカーはデフォルトでWebインターフェースの使用は不可

WebユーザーIF使用の必要性を検討

Web UIを使用しない場合、Web UI機能を無効化した方がセキュリティ上適切

ブローカー管理セキュリティが無効の場合、ログインをスキップしWeb管理画面にアクセスできてしまう

Web UIを無効化する手順は次ページに記載

Web UIを使用する場合、セットアップを実施

ブローカー管理セキュリティを前提にロール・ベースでWebインターフェースへのアクセスを制御

–ブローカー管理セキュリティの有効化やアクセス制御設定に加え、Webユーザー・アカウントの作成とロールの割り当てが

必要

Web UI使用のためのセットアップ手順はV8.0.0.1資料に記載

–「WebSphere Message Broker V8.0.0.1 アップデート・ セミナー」資料の「Web管理機能の強化」(p.21-25)

http://www.ibm.com/developerworks/jp/websphere/library/esb/mb8001_ws/

Page 13: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

25

Webユーザー・インターフェースの使用

ランタイムコマンドでWeb UIを無効にする方法

mqsichangepropertiesコマンドを使用する–「webadmin」コンポーネントの「server」オブジェクトの「enabled/enableSSL」を指定

–HTTP/HTTPSいずれも無効に変更

–設定の反映にはブローカーの再起動が必要

mqsichangeproperties brokerName -b webadmin -o server -n enabled,enableSSL -v false,false

26

Webユーザー・インターフェースの使用

Integration BusエクスプローラーでWeb UIを無効にする方法

「WebAdmin」で使用可能(使用可能SSL)をfalseに変更

ブローカーを選択し、「プロパティー…」をクリック

Page 14: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

27

ブローカーのチューニング

JVMヒープサイズの拡張

実行グループはJVMを内包

実行グループの内部管理にもJavaが使われているが、JVMヒープの使用量は微小

フローの中でJavaが多用される場合、JVMのヒープサイズの拡張を検討

実行グループのJVMが使用される主な機能

ヒープサイズのチューニングのためのGC状況のモニタリング

デフォルトのヒープサイズは最小32MB(グローバル・キャッシュが有効な時は96MB)、最大256MB

フローを稼働しJVMヒープの使用量やGCの状況をモニターした上で適切なサイズを決める

実行グループのGC状況をモニタリングするための設定は次ページに記載

• JavaComputeノード

• Javaユーザー定義拡張機能ノード

• SOAPノード

• グラフィカル・データ・マップを実行するMappingノード

• XSLTransformノード

• ESQLからJavaプログラムの起動

28

ブローカーのチューニング

JVMヒープサイズの拡張

実行グループのJVMのプロパティーの指定

IIB管理者ユーザーでmqsichangepropertiesコマンドを実行

–JVMに関するパラメータは -o オプションに”ComIbmJVMManger”を指定

–-n オプションにプロパティー名、-v オプションに具体的な値を指定

–指定可能なJVMパラメータについて詳しくは以下を参照

Javaのverbosegcのファイルを出力する方法

コマンド例

–ファイル名はフルパスで指定する。相対パスでは実行グループのカレントディレクトリ(通常導入ディレクトリのbin)に出力される

JVMのヒープサイズ設定方法

ヒープの最小サイズと最大サイズをバイト単位で指定

コマンド例

最大ヒープサイズの設定mqsichangeproperties ブローカー名 –e 実行グループ名 –o ComIbmJVMManager –n jvmMaxHeapSize –v 最大サイズ

mqsichangeproperties ブローカー名 –e 実行グループ名 –o ComIbmJVMManager –n jvmSystemProperty

–v”-Xverbosegclog:ファイル名”

最小ヒープサイズの設定mqsichangeproperties ブローカー名 –e 実行グループ名 –o ComIbmJVMManager –n jvmMinHeapSize –v 最小サイズ

http://pic.dhe.ibm.com/infocenter/wmbhelp/v9r0m0/topic/com.ibm.etools.mft.doc/an09143_.htm

Page 15: IBM Integration BusV9 導入・構成ガイドpublic.dhe.ibm.com/software/dw/jp/websphere/esb/ib9...IIB V9.0の前提はMQ V7.5以降、MQ V7.1新機能のチャネル・アクセス制御を含んでいる

29

ブローカーのチューニング

スタックサイズの拡張

メッセージ・フローが大量の繰り返しやネストを含むメッセージを処理する場合や、ESQLに

おいて再帰的な処理を実施する場合に、スタックを増やすことを検討

スタックサイズのデフォルト

スタックサイズを拡張する場合、環境変数MQSI_THREAD_STACK_SIZEにサイズを指定

しブローカーを再起動

2MBAIX

プラットフォーム スタックサイズ(メッセージ・フローのスレッド毎)

AIX以外のUNIX, Linux, Windows 1MB

30

ブローカーのチューニング

MQでチューニングするパラメータのガイド

IIBが使用するMQのチューニングに関連するパラメータの参照情報

MQのためのOSのパラメータ設定の参照情報

InfoCenter – インストール/システムの準備/追加設定

–http://pic.dhe.ibm.com/infocenter/wmqv7/v7r5/topic/com.ibm.mq.ins.doc/q008520_.htm

How to configure UNIX and Linux systems for WebSphere MQ

–http://www-01.ibm.com/support/docview.wss?uid=swg21271236

MQのチューニングのための参照情報

develperWorks - Configuring and tuning WebSphere MQ for performance on Windows and UNIX

–http://www.ibm.com/developerworks/websphere/library/techarticles/0712_dunn/0712_dunn.html

MQの導入方法(導入の前提となるチューニング・パラメータの設定を含む)

developerWorks - テクニカル・トピックス - WebSphere - WebSphere MQ V7.1 導入ガイド

–http://www.ibm.com/developerworks/jp/websphere/library/wmq/mq71_install/