MSMQ:2个服务器是否需要在同一个域中才能访问私有队列?

时间:2011-03-02 13:34:31

标签: wcf msmq rhino rhino-esb

正如标题所说 - 我有3台服务器:

server-1 [wcf services] server-2 [wcf服务] server-3 [esb using rhino.esb]

所以 - 服务器1将消息发布到server-3 esb 服务器2通过server-3 esb订阅来自服务器1的消息

他们都需要在同一个域或其他任何领域吗?

3 个答案:

答案 0 :(得分:1)

为了安全起见,公共队列和私人队列之间没有区别 - “公共”只是意味着在Active Directory中发布。

此外,您需要区分“不同的域”和“不同的林”。我猜你的意思是后者。同一个林中的两个域共享相同的安全数据库,因此不会出现问题。

不要将队列上的访问控制列表视为一种强大的安全形式。可以使用任何帐户的SID发送消息以绕过队列权限。如果安全性存在问题,使用internel(MSMQ)或外部证书进行身份验证是一种更好的选择。

干杯
John Breakwell

答案 1 :(得分:0)

没有。但它不太安全或更复杂。取决于您是否使用无安全性(每个人都有访问权限)或证书。 请看Securing Messages Using Transport Security

答案 2 :(得分:0)

只能通过TCP端口访问专用队列,因此托管服务器甚至不需要在域上就可以访问MSMQ队列。但是,我建议您在网络层(即防火墙)应用传输级安全性,以防止任何未经授权的流量将消息放入队列/从队列中检索。