【发布时间】:2013-06-18 00:54:40
【问题描述】:
我有一个奇怪的要求——我有很多用户在运行我的应用程序,我需要让应用程序知道谁在运行它。这根本不是问题,我可以很好地捕获这些信息。
诀窍是应用程序需要访问受限制的网络共享 - 运行该应用程序的任何用户都无权在那里执行任何操作。那里发生了很多事情——读取文件、写入,并且由于这是一个 WPF 应用程序,因此数据绑定到该受限区域中的文件 URI。以设置 Image 的 ImageSource 为例。在应用程序的所有不同部分,我需要不受限制地访问这些数据。
我一直在研究 WindowsIdentity.Impersonation 的东西,但它似乎更倾向于在较小的上下文范围内模拟用户,然后结束模拟......这还可以,但不方便。
有没有办法让我的应用启动,然后在应用范围内模拟用户?这样我就可以使用正确的权限集完成所有工作。
【问题讨论】:
-
@jeremywho cmets 的 url 简写语法是
[ text ]( url ) -
@jeremywho 我知道你可以,但是如果你过去读到我提到我知道 WindowsIdentity.Impersonation 的地方,我会解释为什么这不是我正在寻找的短期上下文方面为。
标签: c# wpf impersonation network-share