试图在ASP中读写文件时出现权限问题.网络应用程序



我们有一个。net web应用程序。web应用程序在IIS中安装,并运行在AppPool下,该AppPool运行在域User1

下。

这个web应用程序有c#。. NET代码,用于访问服务器上的文件。问题是只有DomainUser2对这个文件有读/编辑的权限。

我们知道. net代码将在AppPool帐户(即:DomainUser1)的凭据下运行。因此,如果我们试图在web应用程序的。net代码中读写文件,那么它将抛出错误。

我可以使用什么可能的方法来访问这个文件?根据我们公司的政策,我不允许更改AppPool用户。如果这是可能的,那么代码可以访问/写入文件。此外,由于公司政策,我无法更改文件的权限并允许DomainUser2再次访问它。

我还有其他选择吗?

我可以只运行文件读/写部分代码作为域User2通过。net代码?

模拟在您的情况下也不起作用,因为您允许作为第一个用户访问asp.net,并且您指出这是公司政策所禁止的。解决方案是双重的:

  • 向经理解释需求并获得批准
  • 为文件添加acl,以便应用程序池用户可以写入文件

另一种方法是设置一个没有用户可以访问的服务帐户,并使用该帐户访问所讨论的文件。

你想过写一个文件上传/下载服务吗?它可以运行在只有DomainUser2有权访问文件的服务器上。

最好在IIS中使用'WindowsAuthentication',这将帮助您在web应用程序中访问WindowAccount。你也可以限制用户组,用户类型等

最新更新