我知道 DCOM 话题已经讨论过几次了。但是,我对(目前)可用的解决方案并不满意。这就是为什么我在这里开始一个新问题。
现在每个人都知道访问控制列表 (ACL) 存储了有关哪些用户可以对应用程序执行什么操作的信息,这些信息存储在注册表中 HKCL\AppID{GUID}[AccessPermission|LaunchPermission] 下。这些键包含二进制形式的“序列化 ACL”数据 (byte[])。
我根本不相信不可能将这些值与 System.Security.AccessControl 命名空间一起使用。必须有一种“反序列化”它们并在其中添加或删除条目的方法。
另外,我当然是在谈论 .NET 解决方案。可能需要也可能不需要 p/invoking 一些魔术 api 函数或实现一些奇怪的结构,但我确信可以实现一个很好且直观的 .NET 库,使我们能够从托管代码处理 DCOM 安全设置。
有谁知道该怎么做?