【问题标题】:Accessing messageQueue from anonymous web service从匿名 Web 服务访问 messageQueue
【发布时间】:2011-04-06 05:39:25
【问题描述】:

我有一个对所有人都具有完全权限的公共消息队列,我尝试从匿名 Web 服务访问它。

  1. 方法MessageQueue.Exists -> 一直返回false。如果队列是公开的,每个人都有权限,为什么我找不到呢?

  2. 我将代码更改为如下所示:

    MessageQueue queue = new MessageQueue(name);

    return queue.Peek(expireInterval);

但这会引发队列不存在或我无权访问它的异常。

Web 服务必须保持匿名,为什么授予队列权限还不够?

我什至尝试完全控制匿名帐户,nada。

请有人向我解释一下这个巫术,在此先感谢:)

【问题讨论】:

    标签: c# web-services message-queue anonymous


    【解决方案1】:

    在做了一些研究之后,我发现在这个网站上提出了一个类似的问题,该问题的答案是将队列路径从“.\QueueName”更改为“FormatName:DIRECT=OS:.\QueueName”。

    这确实有帮助,虽然我找不到原因。 然后我找到了这篇文章: http://www.infosysblogs.com/microsoft/2007/02/msmq_sending_message_to_remote.html 这说明远程访问 MSMQ 需要使用 FormatName 语法。

    我仍然不明白为什么当 WS 在集成安全下运行时这会起作用。

    【讨论】:

      猜你喜欢
      • 2010-09-26
      • 1970-01-01
      • 2012-12-10
      • 2011-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-04
      • 1970-01-01
      相关资源
      最近更新 更多