如何:禁用 Web 服务的协议支持
本主题专门介绍一项旧有技术。现在应通过使用以下链接来创建 XML Web 服务和 XML Web 服务客户端: Windows Communication Foundation.
若要帮助降低意外调用 Web 服务的风险,应在不需要时禁用协议支持。您可以禁用整个计算机的协议支持,也可以禁用单个 Web 应用程序的协议支持。
为整个计算机禁用 HTTP-GET 和 HTTP-POST 协议
在文本编辑器中打开 Machine.config 文件。(Machine.config 的默认安装位置为安装根目录的 \Config 子目录。)
注释掉
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>
保存 Machine.config。
当下次向该计算机上承载的 Web 服务发出请求时,此配置更改将生效。
为单个 Web 应用程序禁用协议支持
在文本编辑器中打开 Web 应用程序的根目录中的 Web.config 文件。(如果 Web.config 文件不存在,请创建一个。)
修改 Web.config 的
webServices
部分,以显式移除协议设置。下面的示例显式移除 HTTP-POST 和 HTTP-GET 协议:<webServices> <protocols> <remove name="HttpPost" /> <remove name="HttpGet" /> </protocols> </webServices>
保存 Web.config。
当下次向该 Web 应用程序承载的 Web 服务发出请求时,此配置更改将生效。
另请参见
任务
概念
使用 ASP.NET 创建的 XML Web services 的配置选项
部署 XML Web services