3

我正在尝试从 IIS7 下的 ASP.NET 应用程序写入日志文件,但不断收到以下异常:

UnauthorizedAccessException “对路径 'C:\Users\Brady\Exports' 的访问被拒绝。”

根据 Google 找到的各种建议,我已授予 iis_iusrs、iis_wpg 和 aspnet 用户的写入权限,但仍然出现错误。有人可以解释一下我如何在该目录中创建一个日志文件,或者,在 Web 应用程序本身下创建一个日志目录是否会自动允许写入该文件,这可能不是一个更好的解决方案吗?

4

3 回答 3

4

您需要向以下帐户之一授予权限

ASPNET - Win XP and Win 2000
NETWORK SERVICE - Win Vista and 2003

这些是默认值,如果应用程序池已配置为不同的进程帐户,那么您将需要使用该特定帐户。

于 2008-10-09T16:42:32.170 回答
0

我认为 Mitchel 明白了,但我要补充一点,使用 SysInternals 的Process Monitor(用于遗留系统的FileMon)排除这些猜测/试错会变得非常容易。

于 2008-10-09T16:44:13.337 回答
0

如果您在 ASP.NET 中模拟其他用户,则该用户帐户必须具有写入该目录的权限。我强烈建议不要将用户的个人文件夹路径设置为存储 Web 应用程序日志或数据的位置。这要求 ASP.NET 工作进程帐户有权访问该用户的私有文件夹(如果它们不是同一个帐户)。

鼓励分配公共区域,例如 D:\webapps\logapp\logfiles。当然,有了适当的权限。

于 2008-10-13T10:55:33.260 回答