Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何防止站点访问其他站点文件夹?_C#_Asp.net_.net_Authentication_Web Config - Fatal编程技术网

C# 如何防止站点访问其他站点文件夹?

C# 如何防止站点访问其他站点文件夹?,c#,asp.net,.net,authentication,web-config,C#,Asp.net,.net,Authentication,Web Config,请帮帮我 我正在开发一个asp.net应用程序,其主站点和子站点如下: site.com/parent site.com/parent/child1 site.com/parent/child2 父站点上的任何页面都可以访问child1和child2文件并复制、删除它们 但问题是:child1还可以访问child2文件并复制、删除它们 我想阻止child1站点访问child2文件 我正在使用asp.net和IIS 7.5 请帮忙 设置具有不同安全性的站点,然后阻止对文件夹的访问。这将取决于您当前

请帮帮我 我正在开发一个asp.net应用程序,其主站点和子站点如下:

site.com/parent

site.com/parent/child1

site.com/parent/child2

父站点上的任何页面都可以访问child1和child2文件并复制、删除它们

但问题是:child1还可以访问child2文件并复制、删除它们

我想阻止child1站点访问child2文件

我正在使用asp.net和IIS 7.5


请帮忙

设置具有不同安全性的站点,然后阻止对文件夹的访问。这将取决于您当前使用的身份验证类型,但让我们假设它是匿名访问

假设child1和child2是虚拟目录:

创建将分配给child1的用户和将分配给child2的其他用户

在IIS中,转到child1>>身份验证。编辑匿名>>更改为child1的用户

转到child2>>身份验证。编辑匿名>>更改为child2的用户

如果您不使用匿名访问,您可以对正在使用的身份验证类型执行与上述类似的操作。(如果使用SSPI,请不要忘记数据库)

转到child1的文件和/或文件夹,并将ACL更改为阻止child2用户。转到child2的文件和/或文件夹,并将ACL更改为阻止child1用户

编辑:

还请记住更改ACL以允许文件/文件夹上的相应用户。因此,对于child1的文件/文件夹,添加允许读取、写入child1用户,等等

如果你是共享主机,我希望他们会允许你改变文件的安全性

您还可以在web.config中配置身份验证属性。例如,对于匿名身份验证:


我只有一个asp.net共享主机!有没有办法通过编程或web.config文件来完成这些步骤?谢谢你Marnee先生:)[我是新来的,我无法评估你的答案!]你可以在web.config中更改每个孩子的匿名身份验证设置(Bumm先生是正确的)。我被否决了。我是不是误解了这个问题?或者我不知道有人能告诉我为什么不好吗?请