【发布时间】:2014-03-19 18:22:18
【问题描述】:
我有一个公开 .net dll 的 COM+ 应用程序。它在定义的帐户下运行。 .net 组件记录对 com 应用程序的调用,因此使用 System.Security.Principal.WindowsIdentity.GetCurrent().Name 将此帐户捕获为当前用户。
COM+ 应用程序托管在服务器 A 上,但将从服务器 B、C 和 D 调用。
后端数据库要求是每个用户执行操作,因此从数据库安全的角度来看,在运行 COM+ 的帐户下执行方法是不够的 - 我们需要知道具体的用户。
我们已将应用配置为使用身份选项卡上定义的帐户运行,并且在安全选项卡上使用数据包/模拟。
因此我的问题是:COM+ 应用程序在服务器 A 上以 Mr. White 的身份运行。Pink 先生在服务器 B 上执行调用 CreateObject("Com+App", "Server A") 的脚本。我希望 .net 捕获“Mr. Pink”,但它只捕获“Mr. White”。
我可以在这种情况下捕捉“粉红色先生”吗?如果可以,如何捕捉?
【问题讨论】: