0

匿名のWebサービスからアクセスしようとする、すべてのユーザーに対する完全なアクセス許可を持つパブリックメッセージキューがあります。

  1. メソッドMessageQueue.Exists->常にfalseを返します。キューが公開されていて、全員に権限がある場合、なぜそれが見つからないのですか?

  2. コードを次のように変更しました。

    MessageQueueキュー=新しいMessageQueue(名前);

    queue.Peek(expireInterval);を返します。

しかし、これはキューが存在しないか、キューにアクセスするためのアクセス許可がないという例外をスローします。

Webサービスは匿名のままである必要がありますが、キューにアクセス許可を与えるだけでは不十分なのはなぜですか?

ANONYMOUSアカウント、灘にフルコントロールを与えてみました。

誰かがこのブードゥーを私に説明してください、事前に感謝します:)

4

1 に答える 1

0

いくつかの調査を行った後、キューのパスを「.\QueueName」から「FormatName:DIRECT=OS:.\QueueName」に変更することで回答された、このサイトで尋ねられた同様の質問を見つけました。

理由はわかりませんでしたが、これは確かに役に立ちました。次に、次の記事を見つけました: http://www.infosysblogs.com/microsoft/2007/02/msmq_sending_message_to_remote.html MSMQ にリモートでアクセスするには、FormatName 構文を使用する必要があることを説明しています。

WS が統合セキュリティの下で実行されているときに、なぜこれが機能するのかはまだわかりません。

于 2010-09-06T13:02:00.810 に答える