Permissions 不同的DCOM/COM安全设置意味着什么?

Permissions 不同的DCOM/COM安全设置意味着什么?,permissions,com,opc,dcom,opc-da,Permissions,Com,Opc,Dcom,Opc Da,我们的应用程序广泛使用COM和DCOM,因此作为其中的一部分,我们需要确保正确设置COM安全权限。我知道我可以在组件服务MMC管理单元下访问这些权限,并且可以在计算机的属性页下设置默认值/限制 在DCOM配置节点下,我可以深入查看并设置各个应用程序的安全权限 我还了解“默认值”(DCOM应用程序将使用什么,除非在每个应用程序的基础上明确设置权限)、“限制”(即使每个应用程序的设置超过这些设置,也将强制执行什么权限)之间的关系,但我不明白(也找不到任何文档)关于我可以设置的不同设置之间的差异

我们的应用程序广泛使用COM和DCOM,因此作为其中的一部分,我们需要确保正确设置COM安全权限。我知道我可以在组件服务MMC管理单元下访问这些权限,并且可以在计算机的属性页下设置默认值/限制

在DCOM配置节点下,我可以深入查看并设置各个应用程序的安全权限

我还了解“默认值”(DCOM应用程序将使用什么,除非在每个应用程序的基础上明确设置权限)、“限制”(即使每个应用程序的设置超过这些设置,也将强制执行什么权限)之间的关系,但我不明白(也找不到任何文档)关于我可以设置的不同设置之间的差异

  • “访问”、“启动”、“激活”和“配置”权限之间有什么区别
  • 这些设置是影响COM应用程序,还是仅影响DCOM应用程序
  • 如果使用远程DCOM,我需要在服务器和客户机上设置权限,还是只在客户机上设置权限
  • 是否有任何文件说明上述情况

安全选项卡上的设置是注册表上的每个AppID安全配置,您可以在以下内容中找到有关MSDN的更多信息:

AccessPermission描述了服务器的访问控制列表(ACL) 可以访问此类实例的主体。使用此ACL 仅适用于不调用CoInitializeSecurity的应用程序

LaunchPermission描述了服务器的访问控制列表(ACL) 可以为此类启动新服务器的主体

当COM客户端尝试访问COM服务器时,COM子系统会根据这些访问列表检查客户端凭据,并决定是否允许访问服务器,如果服务器尚未启动,则决定是否允许启动服务器。因此,这两个列表—用于常规访问和新服务器启动(如果有必要)


请注意,这些是每个应用程序的设置。要正确关联注册表中的特定类。

MSDN:@romar。我知道这些链接——它们解释了如何更改这些设置,但是除了通过诸如“分配或拒绝访问组件对象模型(COM)应用程序的用户”之类的短语之外,它们没有解释这些设置的作用。这到底意味着什么,它与“启动”、“激活”或“配置”有何不同?“访问”是否包含所有这些权限?“启动权限”实际上是一个权限允许/拒绝列表,定义允许谁启动COM服务器。等等您可能被允许访问,但不能启动(也就是说,如果其他人为您启动了它,您可以使用它)。这些都是COM/DCOM服务器(
AppID
)的设置,而不是客户端。@RomanR。那么,“激活”和“访问”有何不同呢?当然,如果您有访问权限,但无法激活任何COM对象,那么您就不能执行任何操作?