限制特定用户获取对指定 Web 资源的访问权限

本文介绍如何限制特定用户获取对指定 Web 资源的访问权限的方法。

原始产品版本:   ASP.NET
原始 KB 编号:   815151

摘要

基于网站的 Web ASP.NET提供了多种方法,以便用户通过身份验证和授权获得对资源的访问权限。 限制资源访问的方式因使用的身份验证方法而异。 例如,对于使用 Microsoft Windows 身份验证并启用模拟的应用程序,可以使用新技术文件系统 (NTFS) 文件权限进行访问控制。 但是,对于使用表单身份验证的应用程序,必须修改Web.config文件以限制访问。 本文介绍如何控制这两种身份验证方法ASP.NET授权。

使用文件权限控制授权

For ASP.NET where you use Windows authentication and you enable impersonation, you can use standard NTFS file permissions to require authentication and to restrict access to the files and folders:

  • 若要要求进行身份验证,请删除 ASPNET 用户帐户对文件或文件夹的访问权限。
  • 若要限制对特定 Windows 用户帐户或组帐户的访问,请授予或拒绝对文件或文件夹的读取 NTFS 文件权限。

通过修改文件控制Web.config授权

若要限制ASP.NET表单身份验证的应用程序的访问,请编辑应用程序的应用程序配置文件中的 <authorization> Web.config 元素。 为此,请按照下列步骤操作:

  1. 启动文本编辑器(如记事 )Web.config应用程序根文件夹中的 "记事本" 文件。

    备注

    如果 Web.config 文件不存在,请为 Web.config应用程序创建 ASP.NET文件。

  2. 如果要控制整个应用程序的授权,可以将 configuration 元素添加到Web.config<authorization> <system.web> 文件中。

  3. <authorization> 元素中,添加 <allow> configuration 元素和 <deny> configuration 元素。 使用 users 属性指定用户名的逗号分隔列表。 您可以使用问号 (?) 作为匹配任何用户名的通配符。 例如,以下代码拒绝访问除 和 以外的 user1 所有用户 user2

    <authorization>
        <allow users="user1, user2"/>
        <deny users="?"/>
    </authorization>
    
  4. 保存Web.config 文件

参考