有大量在线建议使用 .net System.Messaging.MessageQueue SetPermissions 方法以编程方式设置 MSMQ 权限。但是我找不到任何 system.messaging 属性可以让我读取现有队列上当前配置的权限。
我正在尝试编写一个 powershell 审计脚本来评估数十种机器配置,如果我无法获得队列的配置权限,它几乎完全没用。
我对命令行选项的建议持开放态度,但在 stackoverflow 中没有发现任何内容。 Yoel 的 MSMQ WMI 提供程序没有公开必要的信息,据我所知,MSMQ 没有提供任何命令行来帮助您。
不敢相信这是没有人解决的问题。 Microsoft 的另一个企业产品缺少基本安全功能(验证)。
使用 powershell 进行审计,更喜欢内置或 .net 框架解决方案,但如果需要,可以通过任何必要的方式 (CLI) 获取信息。
最佳答案
您可能无法使用 P/Invoke to call MQGetQueueSecurity . IIRC COM 接口(interface)也不支持读取队列权限。
关于powershell - 如何以编程方式读取 MSMQ 队列的权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6514794/