【问题标题】:MSMQ AD permissionsMSMQ AD 权限
【发布时间】:2011-03-08 19:22:13
【问题描述】:

我们有一个系统使用两台机器进行一些处理。让我们称执行处理的机器为 PROCESSOR,而机器为它提供处理 SERVER 的项目。两者都运行 Windows Server 2008。我们在 SERVER 上运行了一个 Windows 服务,它需要使用 MSMQ 将消息发送到公共队列 PROCESSOR。

在 PROCESSOR 上,我们有另一个 Windows 服务,它从队列中提取项目进行处理。

这两台机器在同一个域中,如果我们在具有域管理员权限的帐户下运行这两个服务,则一切正常。但是,我们需要帐户拥有尽可能低的权限(尤其是对于 SERVER 上的服务)。

在提升我们用于 PROCESSOR 服务的帐户的权限之前,我尝试将其完全权限授予 MSMQ。但是,这似乎还不够,一旦该服务尝试对 MSMQ 执行任何操作(它在启动时所做的第一件事是检查相关队列是否存在),我得到一个异常消息“访问消息队列是拒绝”。

是否有人知道需要向 AD 帐户授予哪些权限才能使其能够使用 MSMQ?

谢谢,

安德鲁

【问题讨论】:

    标签: active-directory msmq


    【解决方案1】:

    您需要为 Active Directory 中的对象设置权限。
    因此,例如,如果您要查询对象,则需要获取属性权限。
    这应该在计算机对象下的 MSMQ 对象和 MSMQ 对象下的队列对象上。 此外,默认设置将限制为允许所有人发送但不允许接收,因此您需要为您使用的域帐户添加该访问权限才能阅读邮件。

    【讨论】:

      【解决方案2】:

      在定义的系统帐户下运行您的服务,例如(我相信是网络),然后将 MSMQ 上的权限设置为完全控制。

      当我过去使用它时,我只是作弊并允许访问“所有人”。但在域设置中,最好的方法是创建域用户并将其设置为 MQ 上的服务和权限。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-08-10
        • 2021-02-04
        • 1970-01-01
        • 2011-09-26
        • 2011-03-12
        • 2020-05-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多