使用批处理文件的 DCOM 安全性
Posted
技术标签:
【中文标题】使用批处理文件的 DCOM 安全性【英文标题】:DCOM Security using a batch file 【发布时间】:2011-07-19 03:15:49 【问题描述】:是否有任何方法可以使用批处理文件更改 COM 安全的访问权限? 我需要使用批处理脚本在“访问权限”和“启动和激活权限”中将新值写入“编辑限制...”和“编辑默认值...”。 我正在使用带有 Service Pack 2 和 3 的 Windows XP 机器。
谢谢。
【问题讨论】:
【参考方案1】:我最近需要创建一个批处理脚本来授予默认的本地激活权限,以便我可以在 Windows Azure 上运行进程外 COM 组件。经过大量研究,我使用了一个名为RegFromApp(下载链接在页面底部附近)的工具来查看当我在 Windows Server 2008 R2 VM 上授予上述权限时,Windows 注册表中发生了哪些更改。以下是我用来确定对注册表进行哪些更改的步骤...
-
在命令提示符中输入
dcomcnfg
以启动组件
服务
推出 RegFromApp 程序
在 RegFromApp 中,选择 mmc.exe 进程并单击 OK 以检查它将进行哪些更改注册
返回组件服务,在左侧面板中展开组件服务项
扩展了左侧面板中的计算机项
右键单击左侧面板中的我的电脑项目并选择属性
从弹出菜单中
已选择 COM 安全 选项卡
在启动和激活权限框中,点击编辑默认值
按钮
点击了添加按钮
在空框中输入IIS_IUSRS
,单击检查名称按钮并
点击确定按钮
为本地激活勾选允许并点击确定 按钮
点击应用按钮,然后点击确定按钮
返回 RegFromApp 程序,单击文件菜单中的 另存为 以保存注册表
更改为SetDCOMPermission.reg
文件
在 .reg 文件中记录了注册表更改(即 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLE 中的 DefaultLaunchPermission 值已修改] 键),我编写了以下批处理脚本来注册我的 COM 组件并通过运行我的 .reg 文件将更改应用到注册表...
chcp 1252>NUL
OleAutomationFeasibilityModel.exe /regserver
regedit.exe /s SetDCOMPermission.reg
exit /b 0
我相信您可以使用类似的技术在 .reg 文件中记录您要实现的目标所需的注册表更改,并从批处理脚本运行此文件。
希望有帮助!
【讨论】:
【参考方案2】:我不知道有任何第三方工具可以让您以编程方式创建 ACL。在过去,我只见过使用自定义工具完成此操作,例如VBScript 和 C++ COM 组件或本机命令行工具。
如果您确实想走这条路,那么Keith Brown's Programming Windows Security 是一本关于该主题的优秀书籍,如果这些天有点老的话。几年前,我曾经在这样一个组件上工作过。
【讨论】:
以上是关于使用批处理文件的 DCOM 安全性的主要内容,如果未能解决你的问题,请参考以下文章