请帮帮我 我正在开发一个asp.net应用程序,它有一个主站点和子站点,如下所示:
site.com/parent
site.com/parent/child1
site.com/parent/child2
父网站上的任何页面都可以访问child1和child2文件并复制,删除它们
但问题是:child1也可以访问child2文件并复制,删除它们!
我想阻止child1网站访问child2文件
我正在使用asp.net和IIS 7.5
请帮忙!
答案 0 :(得分:2)
设置具有不同安全性的网站,然后阻止对文件夹的访问。这取决于您当前使用的身份验证类型,但我们假设它是匿名访问。
假设child1和child2是虚拟目录:
创建一个您将分配给child1的用户和另一个您将分配给child2的用户。
在IIS中,转到child1>>验证。编辑匿名>>更改为child1的用户。
转到child2>>验证。编辑匿名>>更改为child2的用户。
如果您不使用匿名访问,则可以对您使用的身份验证类型执行与上述类似的操作。 (如果您使用的是SSPI,请不要忘记您的数据库)
转到child1的文件和/或文件夹,然后将ACL更改为阻止child2用户。转到child2的文件和/或文件夹,并将ACL更改为阻止child1用户。
编辑:
还要记住更改ACL以允许文件/文件夹上的相应用户。因此,对于child1的文件/文件夹,添加允许读取,写入child1用户,等等。
如果您在共享主机上,我希望他们允许您更改文件安全性。
您还可以在web.config中配置身份验证属性。例如,对于匿名身份验证:
http://msdn.microsoft.com/en-us/library/ms689465%28v=vs.90%29.aspx