如何: 审核 ASP.NET Web 应用程序或 Web 服务的安全

文章翻译 文章翻译
文章编号: 815144 - 查看本文应用于的产品
本文已归档。它按“原样”提供,并且不再更新。
展开全部 | 关闭全部

本文内容

概要

本分步指南介绍了如何审核 ASP.NET Web 应用程序或一个 ASP.NET Web 服务的安全。

将新元素添加到系统的理想的配置,则会降低系统的安全性。新的应用程序安装、 软件更新、 临时的配置更改和系统的安全配置的故障排除更改方面。是否有意或无意这些更改可能会导致系统不能再满足安全要求。若要减少此效果,执行定期审核的系统安全配置。文档和评估安全配置引入到系统的任何更改。如有必要,反转这些更改。

本文介绍了影响 ASP.NET 应用程序的关键的配置设置。当您第一次配置您的系统在干净状态,请记录这些设置。执行定期审核以比较当前的设置对原始设置。这些审核可帮助您防止随着时间的推移会降低系统的安全。本文不介绍如何配置这些设置。

有关审核的与.net 框架应用程序并不是 ASP.NET 安全配置项目的其他信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
815143如何: 审核.net Framework 配置的安全

.NET 框架配置项


.NET 框架使用文件的层次的结构来确定应用于应用程序的策略。下面的文件包含默认的配置设置:
\ System Root \Microsoft.NET\Framework\ Version \CONFIG\Machine.config
这些设置可能会被重写在应用程序的根文件夹 (或任何子文件夹) 中一个名为 Web.config 或 ApplicationName.config 文件。您必须审核所有这些文件,以准确地评估应用程序的安全配置。以下是该配置文件的重要元素:
  • <trace>(特别是,该启用 属性和 localOnly 属性)
  • <processmodel>
  • <customerrors>
  • <authentication>(和任何在它所包含的元素)
  • <identity>
  • <authorization>
  • <securitypolicy>
  • <machinekey>
  • <httphandlers>
  • <processmodel>(特别是在启用 属性、 在 用户名 属性和 密码 属性)
  • <protocols><webservices>元素中的配置元素

文件权限

包括与 ASP.NET 文件和文件夹在您审核相关联的 NTFS 文件权限。这可能会被继承父文件夹中,或可能定义每个文件的唯一。

若要轻松地审核文件的权限的大量文件,使用该 Cacls.exe 权限写入文本文件的命令行实用程序。每次执行审核、 比较文件时系统不干净,创建此文本文件,然后记下的任何更改。

要写入一个名为 Output.txt 的文件与 C:\inetpub\wwwroot\ 文件夹相关联的所有文件权限和所有子文件夹,请在命令提示符处运行以下命令:
CACLS C:\inetpub\wwwroot\*/T > output.txt

IIS 配置项

Windows 2000 系统通过使用 Internet Information Services (IIS) 5.0 支持 ASP.NET 应用程序。当安装了.net 框架 IIS 是自动配置为支持 ASP.NET。定期审核在 IIS 中的下列设置:
  • 应用程序映射
    若要访问应用程序映射设置,请按照下列步骤操作:
    1. 单击 开始,指向 设置,和然后单击 控制面板
    2. 双击 管理工具,然后双击 Internet 服务管理器
    3. 用鼠标右键单击虚拟服务器或包含 ASP.NET 应用程序的虚拟文件夹,然后单击 属性
    4. 单击 主目录 选项卡 (或 目录 选项卡)。
    5. 应用程序设置,下单击 配置
    6. 请注意,文件扩展名映射到 Aspnet_isapi.dll 文件的文件。
  • 执行权限
    若要访问执行权限设置,请按照下列步骤操作:
    1. 单击 开始,指向 设置,和然后单击 控制面板
    2. 双击 管理工具,然后双击 Internet 服务管理器
    3. 用鼠标右键单击虚拟服务器或包含 ASP.NET 应用程序的虚拟文件夹,然后单击 属性
    4. 单击 主目录 选项卡 (或 目录 选项卡)。
    5. 请注意是否选中了该 脚本源访问读取写入目录浏览 复选框。此外请注意该 Execute 权限 设置。

SQL Server 配置项

Microsoft SQL Server 包含其自己的安全机制的单独函数从.net Framework 配置、 IIS 和 NTFS 文件权限。过于 permissive SQL Server 权限可能会创建一个漏洞可能会被用来破坏私有数据的 ASP.NET 应用程序中。 您可以查看有关 SQL Server 安全配置的所有方面,与 ASP.NET 使用 SQL 企业管理器的访问。

审核 SQL Server 配置项

  1. 单击 开始,指向 程序、 指向 Microsoft SQL Server,然后单击 SQL 企业管理器
  2. 展开您数据库服务器,展开 安全性,然后再单击 登录
  3. 如果 ASPNET 用户帐户 ASPNET,用鼠标右键单击,然后单击 属性
  4. SQL Server 登录属性 中,单击 数据库访问 选项卡。
  5. 注意: 数据库和 $ 帐户已被其中角色授予访问权限。
  6. 为 ASPNET 帐户具有访问权限的每个数据库执行下列操作:
    1. 展开数据库,然后单击 用户
    2. 用鼠标右键单击 ASPNET,然后单击 属性
    3. 数据库用户属性 中,单击 权限,然后记下 ASPNET 用户具有的所有表和视图上的权限。

参考

有关更多的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
315736如何: 安全使用 Windows 安全的 ASP.NET 应用程序
315588如何: 安全的 ASP.NET 应用程序使用客户端证书

属性

文章编号: 815144 - 最后修改: 2014年2月26日 - 修订: 1.6
这篇文章中的信息适用于:
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
关键字:?
kbnosurvey kbarchive kbmt kbwebservices kbwebforms kbweb kbconfig kbsecurity kbhowtomaster KB815144 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 815144
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com