是否有可能允许匿名用户从一个文件夹浏览只有几个文件(Is it possible to allow

2019-07-29 04:56发布

我想允许匿名用户只能浏览一些文件,如Default.aspx的,aboutus.aspx,contactus.aspx等是否有写所有这些文件的名称在一个地方的方式,否则我将不得不一次又一次地重复下面的代码对于所有的文件吗?

<location path="Default.aspx">
<system.web>
  <authorization>
    <allow users="*"  />
  </authorization>
</system.web>

Answer 1:

这是不可能在单个位置元素指定的多个路径。 我想你问做的是这样的:

<location path="Default.aspx,aboutus.aspx,contactus,aspx">
    <system.web>
        <authorization>
            <allow users="*"  />
        </authorization>
    </system.web>
</location>

不幸的是,我不相信这是可能的。

您有如何做到这一点的几个选项。

A)指定位置元素多次,一个是要允许匿名访问的每个文件:

<location path="Default.aspx">
    <system.web>
        <authorization>
            <allow users="*"  />
        </authorization>
    </system.web>
</location>
<location path="aboutus.aspx">
    <system.web>
        <authorization>
            <allow users="*"  />
        </authorization>
    </system.web>
</location>
<location path="contactus,aspx">
    <system.web>
        <authorization>
            <allow users="*"  />
        </authorization>
    </system.web>
</location>

B)把所有要允许在一个单独的目录匿名访问的文件,如崇拜者如上所述。

C)你可以使用婉授权的文件,而不是URL授权的探索。 随着文件授权,您可以直接分配的Windows ACL权限的文件。 这可能是可以分配你想保护的一个Windows帐户要允许其他ACL帐户的匿名访问文件和文件。 然后,您的任务是使用ASP.Net模拟映射来自匿名访问请求,请求在仅具有向联合国保护的文件访问权限的Windows帐户的安全上下文中执行,并从认证的请求到Windows请求映射帐户可以访问所有文件。

我不知道你想要走这条路,因为它可能是更容易简单地以“位置”元素多次复制,一次要公开匿名访问每个资源。 但是,如果你想看看这个,有一些很好的资源, 在这里或在这里



Answer 2:

我想你可以根据文件夹名组。 检查了这一点http://weblogs.asp.net/gurusarkar/archive/2008/09/29/setting-authorization-rules-for-a-particular-page-or-folder-in-web-config.aspx



文章来源: Is it possible to allow anonymous user to browse only few files from a folder