首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET web.page中的模拟

ASP.NET web.page中的模拟
EN

Stack Overflow用户
提问于 2021-02-26 11:09:02
回答 1查看 117关注 0票数 0

我有一个网页在一个巨大的ASP.NET网络应用程序,应该更新excel文件(使用EPPlus)定位在本地计算机上的按钮点击。

它在本地主机上运行良好,但会导致服务器上出现此错误。

拒绝System.UnauthorizedAccessException:对路径的访问。

目前无法将写入权限授予IIS帐户- NETWORKSERVICE。

除了模拟之外,还有其他方法来修复此错误(用户对路径具有“写”权限,因此这样做可以解决错误)?

如果模仿是唯一的方法,那么它能不能仅仅针对这个特定的网页呢?(我不想为了解决这个问题而显著改变IIS或web应用程序的设置)

EN

回答 1

Stack Overflow用户

发布于 2021-02-26 17:08:42

有几个问题需要回答:

  • 您是在模拟当前登录用户吗?
  • 不管是谁登录,都要访问这些文件吗?

用于第一个

  • 可以使用以下代码模拟当前登录的windows用户

使用using(WindowsIdentity.GetCurrent().Impersonate()) {//您的代码到这里}

用于第二个

  • 您可以在访问该位置的特定用户下运行IIS。
  • 您可以使用模拟类,其中一些可以在网络上使用,例如简单模拟库可以帮助您简化对特定用户的模拟。
  • 有一个很好的post和C#类,可以从https://daoudisamir.com/impersonate-users-in-c/中使用
  • 如果您是自托管站点,则可以创建一个对资源具有访问权限的windows用户,并且可以在using语句下以该用户的身份登录并访问该资源。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66384722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档