拒绝访问 - CreateDirectory C#

时间:2012-04-18 12:59:11

标签: c# asp.net windows impersonation

我有一个带有按钮的ASP.NET应用程序。当您单击按钮时,它有一行,在那里创建一个子目录,我在另一台服务器(不是Web服务器)上通过AD组进行读,写,修改。

当我点击按钮时,我会在子目录中收到“拒绝访问”错误。

在web.config中将Impersonate设置为true。

身份验证是Windows。

WindowsIdentity已设置给我。

由于以上两点,应用程序在我的帐户下运行。

我可以单击该按钮,让它在Windows资源管理器中打开该文件夹。所以我可以访问父母。

如果我在文件夹中创建一个子文件夹。我可以单击该按钮,让它在Windows资源管理器中打开子文件夹

我可以使用C#代码完成所有这些。

只有当我尝试使用C#创建子文件夹时才会告诉我Access Denied。但我有读,写和修改权限。

不明白为什么这不起作用。

2 个答案:

答案 0 :(得分:0)

您应该尝试向sysname\iis_wpg群组授予权限。

答案 1 :(得分:0)

您运行的是哪个版本的IIS?

检查应用程序池部分中运行网站的身份。验证标识是否具有该目录的适当权限。这是用于执行操作系统工作的身份。

请注意,您可能需要通过目录(例如

)上的命令行授予7 / 7.5中的标识
icacls c:\inetpub\wwwroot /grant "IIS APPPOOL\DefaultAppPool":(OI)(CI)(RX)

请参阅Icalcs文档。