ストリーム権限

WebSphere MQ パブリッシュ/サブスクライブでは、パブリッシュおよびサブスクライブの権限検査すべてはストリーム・キューに対して行われます。
  • パブリッシュ元のアプリケーションには、メッセージをストリーム・キューに入れるための権限が必要です。
  • さらに WebSphere MQ パブリッシュ/サブスクライブ・ブローカーは、ストリーム・キュー上をブラウズする サブスクライブ元のアプリケーションの権限も検査します。
  • サブスクライブ元のアプリケーションには、パブリケーションを受け取るために指定したキューにメッセージを書き込む権限が必要です。

同じ検査が WebSphere Message Broker ブローカーによって行われますが、サブスクライブ権限 (ブラウズ) は検査されなくなりました。

その代わりに、WebSphere Message Broker では、個々のトピック・レベルまで到達する階層的な方法で定義できるパブリッシュ・アクセスとサブスクライブ・アクセスの両方が可能です。 これを行うには、ワークベンチを使用してアクセス・コントロール・リスト (ACL) を作成します。

WebSphere MQ パブリッシュ/サブスクライブ・ブローカーを代わりの WebSphere Message Broker にマイグレーションする前、または WebSphere MQ パブリッシュ/サブスクライブ・アプリケーションが WebSphere Message Broker で稼働するようにマイグレーションする前に、 以下のセキュリティー上の注意事項を検討してください。
  • メッセージをストリームまたはパブリケーション・キューに書き込む権限が WebSphere MQ によって検査され続けるので、 ブローカーをトピック・セキュリティーを使用可能にして実行していなくても、 パブリッシュ元のアプリケーションは同じ検査を受けます。

    しかし、パブリッシャーはストリームと同じ名前のキューに書き込む必要がなくなるため、 ストリーム・パブリケーションは任意の入力キュー上の WebSphere Message Broker によって処理することができます。 そのため、すべてのストリームに対して、対応するトピック・レベル修飾子を使用して 同等の ACL をセットアップしてください。

  • WebSphere Message Broker ブローカーは、サブスクライブ元のアプリケーションに ストリーム・キューをブラウズする権限があることを検査しません。 その代わりに、WebSphere Message Broker は、デフォルト・ストリームの一部ではないすべてのトピックに固有の接頭部 $SYS/STREAM/<streamname>/ を付けてストリームを作成します。 これにより、ストリームの区分化特性が保たれ、ストリームに特定の ACL のセットアップが可能になります。 デフォルトのストリームのトピックはブローカーによって変更されません。 ですから、ルート・トピックを使用してデフォルト・ストリーム・トピックの権限を指定できます。
下の図は、必要なストリーム権限を示しています。 この例では、プリンシパル PublicGroup のトピック・ルートにあるデフォルトの ACL を、パブリッシュ、 サブスクライブ、および永続配信の権限すべてを deny に設定して更新していると想定します。

ストリーム権限
この例を使用して、以下のグループが定義されていると想定します。
  • PDefault: デフォルト・ストリームにパブリッシュする許可を持つユーザーのグループ
  • SDefault: デフォルト・ストリームにサブスクライブする許可を持つユーザーのグループ
  • PStreamX: StreamX にパブリッシュする許可を持つユーザーのグループ
  • SStreamX: StreamX にサブスクライブする許可を持つユーザーのグループ
  • PStreamY: StreamY にパブリッシュする許可を持つユーザーのグループ
  • SStreamY: StreamY にサブスクライブする許可を持つユーザーのグループ
ACL を以下のとおりに設定して、権限を認可または拒否しなければなりません。
  1. PDefault にはルートに対するパブリッシュ権限を付与する必要があり、 SDefault にはルートに対するサブスクライブ権限を付与する必要があります。
  2. PDefault には $SYS/STREAM/ に対するパブリッシュ権限を拒否する必要があり、 SDefault には $SYS/STREAM/ に対するサブスクライブ権限を拒否する必要があります。

    これらの設定値は、デフォルト・ストリーム上のパブリッシャーおよびサブスクライバーが他のストリームにパブリッシュまたはサブスクライブできないようにします。 ACL はそれらの設定値を明示的にオーバーライドするように定義する必要があります。

  3. PStreamX には $SYS/STREAM/StreamX/ に対するパブリッシュ権限が必要であり、 SStreamX には $SYS/STREAM/StreamX/ に対するサブスクライブ権限を付与する必要があります。

    これらの設定値は親トピックでのあらゆる設定をオーバーライドして、 パブリッシュおよびサブスクライブの活動をこれらの特定のグループ内にあるユーザーに制限します。

  4. PStreamY には $SYS/STREAM/StreamY/ に対するパブリッシュ権限が必要であり、 SStreamY には $SYS/STREAM/StreamY/ に対するサブスクライブ権限を付与する必要があります。

    これらの設定値は親トピックでのあらゆる設定をオーバーライドして、 パブリッシュおよびサブスクライブの活動をこれらの特定のグループ内にあるユーザーに制限します。

この状態に対して例外をセットアップしたい場合、 適切なポイントで ACL を紹介することが必要です。 例えば、パブリッシャーに StreamX にパブリッシュするためのデフォルト・ストリーム (PDefault) に対する権限を認可したい場合、 明示的な ACL をポイント (3) で作成する必要があります。したがって、例示 (2) での否認をオーバーライドします。 このシナリオでは、ユーザー PDefault はまだ StreamY に対してパブリッシュすることができません。

特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
aq19820_