Mac*_*ver 3 directory permissions iis-7 shared
我正在创建目录,并将文件写入我在Windows Server 2008上托管的Web应用程序中的共享文件夹.我正在运行具有ApplicationPoolIdentity标识的应用程序池.
到目前为止,为了让您了解我的设置..我已将我的Web应用程序根目录的根目录权限设置为两个不同的用户:"IUSR"和"IIS APPPOOL\MYPOOL".我使用名称"MYPOOL"作为我的应用程序池的名称,因此很容易引用.
应用程序无法修改和写入共享文件夹.我右键单击了我正在创建目录并写入的共享文件夹,然后单击"安全"选项卡.然后我点击了"编辑".在对象下,我检查了"计算机".然后在LOCATION下,我尝试了运行我的Web应用程序的机器/服务器.我无法在用户下找到我的"MYPOOL"用户.我试着按照这个链接,但它不是很完整.我不知道使用哪个用户.我继续获得System.IO异常,因为它没有权限.一旦我知道要使用哪个用户,我将不得不对"ExportPath"目录赋予"修改"权限.
为了进行快速测试,我创建了一个名为FilePermissionsTest.aspx的虚拟页面,并编写了一些代码来编写一个文件来创建一个目录并在后面的代码的Page_Load事件中编写一个文件.但我还没有足够的测试它.
...
<div>
Check to see if the file "_File_Permissions_Test.txt" was written to <% Response.Write(Data.ConfigurationHelper.ValueFromConfiguration("ExportPath", Nothing))%>
</div>
Run Code Online (Sandbox Code Playgroud)
...
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim exportPath As String = Data.ConfigurationHelper.ValueFromConfiguration("ExportPath", Nothing)
If exportPath = String.Empty Then Return
Dim exportDirectory As DirectoryInfo = Directory.CreateDirectory(exportPath)
Dim writer As StreamWriter = File.CreateText(Path.Combine(exportDirectory.FullName, "_File_Permissions_Test.txt"))
writer.WriteLine("TESTING... " + DateTime.Now().ToString)
writer.Flush()
writer.Close()
End Sub
Run Code Online (Sandbox Code Playgroud)
正如我在帖子中写的那样: GreKai.WordPress.com 你应该输入计算机名而不是ApplicationPoolIdentity.这是你的问题.试试吧!它应该工作.
步骤是:
转到共享文件夹 - >右键单击 - >属性 - >安全性 - >编辑 - >添加(通常) - >选择对象类型 - >检查计算机 - >现在输入应用程序工作所在的计算机名称,您在哪里发布了您的申请.