如何:禁用 Web 服务的协议支持

若要帮助降低意外调用 Web 服务的风险,应在不需要时禁用协议支持。 您可以禁用整个计算机的协议支持,也可以禁用单个 Web 应用程序的协议支持。

为整个计算机禁用 HTTP-GET 和 HTTP-POST 协议

  1. 在文本编辑器中打开 Machine.config 文件。 (Machine.config 的默认安装位置为安装根目录的 \Config 子目录。)

  2. 注释掉 webServices 部分中添加 HTTP-GET 和 HTTP-POST 支持的行(如果存在)。 完成后,webServices 部分应类似于以下内容:

    <webServices>
        <protocols>
          <add name="HttpSoap"/> 
             <!-- <add name="HttpPost"/> --> 
             <!-- <add name="HttpGet"/>  -->
          <add name="Documentation"/>
          <add name="HttpPostLocalhost"/>
        </protocols>
    </webServices>
    
  3. 保存 Machine.config。

    当下次向该计算机上承载的 Web 服务发出请求时,此配置更改将生效。

为单个 Web 应用程序禁用协议支持

  1. 在文本编辑器中打开 Web 应用程序的根目录中的 Web.config 文件。 (如果 Web.config 文件不存在,请创建一个。)

  2. 修改 Web.config 的 webServices 部分,以显式移除协议设置。 下面的示例显式移除 HTTP-POST 和 HTTP-GET 协议:

    <webServices>
         <protocols>
           <remove name="HttpPost" />
           <remove name="HttpGet" />
         </protocols>
    </webServices>
    
  3. 保存 Web.config。

    当下次向该 Web 应用程序承载的 Web 服务发出请求时,此配置更改将生效。

请参见

任务

如何:禁用 Web 服务的服务帮助页

概念

使用 ASP.NET 创建的 XML Web services 的配置选项
部署 XML Web services

其他资源

使用 ASP.NET 的 XML Web services

Footer image

版权所有 (C) 2007 Microsoft Corporation。保留所有权利。