Oracle Service Bus で MQ Transport を使用して外部 MQ サーバーに接続しています。ただし、問題は、外部 MQ サーバーが以下以外の権限レコードを持つことができないことです。
- CONNECT/INQUIRE (キュー マネージャ用)
- PUT/GET/INQUIRE (キュー用)
これは問題です。OSB MQ トランスポートは常にコンテキストに接続しようとしており、メッセージもコンテキストに配置しようとしているためです。ビジネス サービス設定で、PUT メッセージ オプションに MQC.MQPMO_NO_CONTEXT を設定した場合でも。
OSB MQ トランスポートを使用し、SET/SETALL 権限レコードを設定せずに、MQ とメッセージを交換することさえ可能ですか?
PS。MQ は次のエラーを記録します。
AMQ8077: エンティティー「osbtest」には、オブジェクト「TESTQMGR」にアクセスする権限がありません。
説明: 指定されたエンティティーは、必要なオブジェクトへのアクセスを許可されていません。次の要求された権限は許可されていません: setall
// ...
AMQ8077: エンティティー「osbtest」には、オブジェクト「TEST.QUEUE」にアクセスする権限がありません。
説明: 指定されたエンティティーは、必要なオブジェクトへのアクセスを許可されていません。次の要求された権限は許可されていません: set
バージョン:
- オラクル サービス バス: 11gR1
- ウェブスフィア MQ: 7.5