环境是Windows 2008 R2,ASP.NET 4,IIS 7.我有一个场景,用户向服务器提交一些设置,服务器根据设置(位图或SVG文件)生成文件)并将文件保存到文件夹中。通过写入位图生成图像,并使用File.WriteAllText生成SVG文件。然后将用户重定向到该文件。
我没想到的是服务器能够创建文件,而我没有给文件夹写入权限。我检查过的事情:
我不明白为什么ASP.NET可以在应用程序池具有只读访问权限的文件夹中创建文件?
答案 0 :(得分:0)
原来,Users组对该文件夹具有Create File的特殊权限。不确定为什么在Windows 2008中默认添加 - 在我的所有服务器盒上,新文件夹是使用具有Create Files和其他一些特殊权限的用户创建的。在Windows 7上的行为是不同的 - 没有特殊权限添加到Users组。
无论如何,删除该许可解决了这个问题。
感谢。