如何临时模拟用户打开文件?
我想暂时模拟域用户帐户以从 ASP.NET 站点读取网络驱动器上的文件。
我不想为整个站点设置模拟或在服务器上设置映射驱动器。
I would like to temporarily impersonate a domain user account to read in a file on a network drive from an ASP.NET site.
I would rather not set up impersonation for the entire site or set up a mapped drive on the server.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我最终使用了 Michiel van Otegem 中的代码:WindowsImpersonationContext 制作easy 并添加了 IDisposable 的实现。 我在 另一个有关 ASP.NET 中模拟的问题中发现了这一点。
用法:
代码:
I ended up using code from Michiel van Otegem: WindowsImpersonationContext made easy and added an implementation of IDisposable. I found this in another question about impersonation in ASP.NET.
Usage:
Code:
其实这个过程很简单,你可以使用这样的代码;
您的代码位于“现在模拟”部分。 KEY 是finally 块,这非常重要。 您可以查看这篇 MSDN 文章,了解有关其工作原理的完整详细信息。
Actually, the process is quite easy, you can use code like this;
Your code goes in the "Now impersonating" section. the KEY is the finally block, this is VERY important. You can view this MSDN article for full details on how this works.