2008-09-17 45 views
2

我可以使用DCOMCNFG在我的DCOM应用程序上禁用远程启动,但我想以编程方式执行此操作。我看着CoInitializeSecurity,但似乎没有这样做。任何人都这样做?在DCOM中设置远程启动

我正在使用Delphi的BTW。

回答

1

Remote/Local Activation/Launch的权限在对象的AppID下存储在注册表中。

我不知道如何以编程方式编辑它。

+0

注册表项目是HKEY_CLASSES_ROOT \ Appid 中的LaunchPrimimssion但是它是一个很长的二进制字符串,它对各种用户的权限进行编码。如何解码这似乎是问题。 进一步的研究表明,答案可能在于安全描述符定义语言(SDDL)。 – dcraggs 2008-09-17 12:20:52

2

二进制数据只是一个安全描述符结构(PSecurityDescriptor)。我的意思是它是这种结构的记忆的副本。当然,安全描述符是自相关的。 JWSCL可以轻松创建这样的结构。

Launch-和AccessPermission列表中的每个用户访问权限也包含远程和本地访问。