Powershell 在脚本中设置MSMQ队列的权限

Powershell 在脚本中设置MSMQ队列的权限,powershell,vbscript,permissions,msmq,Powershell,Vbscript,Permissions,Msmq,有谁能给我一些关于如何在脚本(最好是PowerShell)中设置MSMQ队列权限的建议,但我会使用VBscript,PowerShell中没有任何内置的权限,但您可以使用.NET framework类。只需加载System.Messaging.dll并使用MessageQueue.SetPermissions()更改队列上的ACL。下面是一些示例PowerShell,包括设置权限。。。对不起,长度太长了 Windows 2012和8.1现在有MSMQ cmdlet。设置队列权限的方法是:设置Ms

有谁能给我一些关于如何在脚本(最好是PowerShell)中设置MSMQ队列权限的建议,但我会使用VBscript,PowerShell中没有任何内置的权限,但您可以使用.NET framework类。只需加载System.Messaging.dll并使用MessageQueue.SetPermissions()更改队列上的ACL。

下面是一些示例PowerShell,包括设置权限。。。对不起,长度太长了


Windows 2012和8.1现在有MSMQ cmdlet。设置队列权限的方法是:设置MsmqQueueAcl

此问题的当前(2015)答案

例如:

New-MsmqQueue -Name "MyQueue" -QueueType Private
Get-MsmqQueue -Name "MyQueue" -QueueType Private | 
  Set-MsmqQueueAcl -UserName "Everyone" -Allow FullControl
适用于:Windows 8.1、Windows PowerShell 4.0、Windows Server 2012 R2


参考资料:

这已经过时了-@Davids的答案要好得多。对于运行Windows 7或Windows Server 2012 R2之前版本的用户来说,这是一个很好的答案。否则,@GregSansom是正确的。感谢您发布此答案。您也可以
$newQueue=New-MsmqQueue…
然后
$newQueue |设置MsmqQueueAcl…
而不是
获取MsmqQueue
另请参见:文档已于2019年5月过期
New-MsmqQueue -Name "MyQueue" -QueueType Private
Get-MsmqQueue -Name "MyQueue" -QueueType Private | 
  Set-MsmqQueueAcl -UserName "Everyone" -Allow FullControl