首页>
技术资讯>
详情

HTTP 安全性和 ASP.NET Web 服务分析

2016-06-20 来源:CloudBest 阅读量: 690
关键词:


  简介
  有一个一直让 Web 服务开发人员感到头疼的课题,那就是:如何使 IIS 和 ASP.NET Web 服务协同工作以提供安全性。现在,我们通过 IIS 来处理安全问题,并通过 ASP.NET 进行调节。ASP.NET 可以接受 IIS 提供的身份标识信息并使用该信息来了解调用者是谁,或者利用代码访问安全性在 Web 服务上执行特定操作。对于许多人而言,最大的问题是如何使 .NET 应用程序利用内置的 IIS 安全保护功能。在不远的将来,WS-Security 将是您的更佳选择。在那一天到来之前,HTTP 级的安全保护将是我们许多人用来保证信息安全的方法。
  
  当以安全的方式执行 Web 方法时,必须涉及以下各项:
  
  保密使侦听对话的实体不能直接看到数据。
  完整性向接收者提供对 SOAP 消息所作更改进行检测的能力。
  身份验证回答“调用者是谁”的问题。
  授权回答“调用者是否有权访问该 Web 方法”的问题。
  认可证明所发生的操作,以防止客户端在事务处理中欺诈或否认。
  这些安全保护功能常常是配合使用的。身份验证允许授权和认可的发生。SSL 提供的保密措施也包括完整性和身份验证机制。本文假设您已经比较熟悉如何配合使用 SSL 和 IIS。如果您不熟悉,请查看本文末尾的资源。同时,建议您查找安装了证书服务器的 Microsoft® Windows® 服务器,或者在可用的 Windows 服务器上安装证书服务器。这将对理解本文有关 SSL 的部分有所帮助。
  
  使用 SSL 进行加密和签名
  任何时候当您需要对基于 HTTP 的 SOAP 消息进行保密时,都应该通过 SSL 运行服务。它将对通过线路查看数据传输的实体隐藏 Web 服务中的数据。
  
  为了使用本节中的数据,在您的 Web 服务器的根目录下必须安装有 X.509 证书。有关如何执行此操作的信息,请参阅 HOWTO: Configure SSL in a Windows 2000 IIS 5.0 Test Environment Using Certificate Server 2.0 (Q290625)(英文)。正确安装证书后,您便可以为虚拟目录或特定文件选择强制执行 SSL 身份验证。
  
  打开 Internet Information Services 管理控制台的步骤
  在“开始”菜单中单击“运行”。
  在“打开”编辑框中,键入 inetmgr。
  单击“确定”。
  这样,IIS 管理控制台就打开了。
  
  为虚拟目录或特定文件请求 SSL 就是在 IIS 中选择正确的选项。要选择“正确的选项”,请浏览到 IIS 管理控制台中的虚拟目录。如果您想为可以通过给定的虚拟目录进行访问的所有 Web 服务请求 SSL,请右键单击该虚拟目录,单击“属性”,然后单击“目录安全性”选项卡。
  
  如果只保护某个特定的 Web 服务,请右键单击与该 Web 服务关联的 .asmx 文件,单击“属性”,然后单击“文件安全性”选项卡。不管执行哪个步骤,您都将看到一个与图 1 类似的对话框。请在“安全通信”下,单击“编辑”,将打开如图 2 所示的“安全通信”对话框。
  

 

  
图 3:禁用匿名访问的“身份验证方法”对话框

  
  “身份验证方法”对话框允许您配置用户访问虚拟

热门推荐 查看更多