保护WCF服务具体操作步骤剖析

开发 开发工具
当我们在进行保护WCF服务的操作时,首先要操作的就是对服务进行配置,然后还需要进行的则是对客户程序的配置。我们将会对这些步骤一一进行介绍。

WCF开发工具可以帮助我们轻松的打造一个企业级的互联解决方案。其在安全方面优势也是比较突出的。我们今天就为大家详细介绍一下保护WCF服务的相关方法。其实,只要简单地配置一下服务的绑定,就可以对服务进行保护。#t#

wsHttpBinding

WSHttpBinding与BasicHttpBinding相似,但它提供了更多与Web服务有关的特性。它使用HTTP传输协议,并提供了消息层级的加密,这些和BasicHttpBinding一样。但它还支持事务处理、可靠消息、WS-Addressing等特性,这些特性要么默认情况下就已经启用,要么通过一个设定就可以启用。

保护WCF服务操作步骤之配置服务

(1)回到Visual Studio,打开Web.config,准备编辑。

(2)将终结点的绑定属性从basicHttpBinding改为wsHttpBinding,如下面加亮的代码所示。

  1. < ?xml version="1.0" encoding="utf-8" ?>   
  2. < configuration>   
  3. . . .   
  4. < system.serviceModel>   
  5. . . .   
  6. < services>   
  7. < service name="DerivativesCalculatorService.Calculator">   
  8. < endpoint address=""   
  9. binding="wsHttpBinding"   
  10. contract="DerivativesCalculatorService.IDerivativesCalculator"/>   
  11. < /service>   
  12. < /services>   
  13. < /system.serviceModel>   
  14. < /configuration>  

 

保护WCF服务操作步骤之配置客户程序

(3)在Client项目中打开app.config文件,准备编辑。

(4)删除endpoint的bindingConfiguration attribute。

(5)将终结点的绑定从basicHttpBinding改为wsHttpBinding。

(6)需要改动的地方如下面加亮的代码所示:

  1. < ?xml version="1.0" encoding="utf-8"?>   
  2. < configuration>   
  3. < system.serviceModel>   
  4. < bindings>   
  5. . . .   
  6. < /bindings>   
  7. < client>   
  8. < !-- remove bindingConfiguration attribute -->   
  9. < endpoint   
  10. address="http://localhost/DerivativesCalculatorService/Service.svc"   
  11. binding="wsHttpBinding"   
  12. contract="IDerivativesCalculator"   
  13. name="DerivativesCalculatorConfiguration" />   
  14. < /client>   
  15. < /system.serviceModel>   
  16. < /configuration>  

 

保护WCF服务操作步骤之运行使用了安全绑定的服务和客户程序

(7)选择Build | Build Solution菜单项。

(8)在Solution Explorer中右键单击Client项目并选择Debug | Start new instance菜单项。

(9)在刚打开的Client.EXE命令行窗口中按Enter键。

(10)客户程序从运行在IIS中的Derivatives Calculator服务获得了一个衍生产品的估计价格。

(11)在Client.EXE命令行窗口中按Enter键来关闭客户程序。

保护WCF服务操作步骤之检查日志文件

除了用notepad来查看message.log文件,我们还可以使用Microsoft Service Trace Viewer,它是专门设计用来查看、检索、过滤和分析WCF跟踪文件的。

(12)选择Start | All Programs | Microsoft Windows SDK v6.0A | Tools | Svc Trace Viewer菜单项。

(13)选择File | Open菜单项并将当前目录切换到C:\logs文件夹。

(14)在File name文本框中输入message.log并单击Open按钮。

(15)选择Message选项卡。

(16)在Message选项卡中的消息列表中,选择倒数第二条消息。

 

在Service Trace Viewer中选择倒数第二条消息

(17)在右下方切换到Message视图。

(18)查找字符串MSFT。

这一次我们无法找到该字符串。服务现在已经经过配置,它会对接收和发送的消息进行加密,从而保证消息的内容是保密的。到这里就完成了保护WCF服务的操作。

责任编辑:曹凯 来源: IT专家网
相关推荐

2010-03-01 14:56:48

WCF服务引用

2010-02-24 13:06:27

WCF使用Nhiber

2010-03-02 16:15:59

WCF控制事务

2010-03-01 17:28:25

WCF Stream对

2010-04-01 17:25:46

Oracle死锁进程

2010-02-24 17:41:05

WCF集合反序列化

2010-03-30 09:37:01

Oracle导出工具

2010-04-30 12:15:42

Oracle自增ID

2009-12-30 15:47:40

Silverlight

2011-03-17 09:06:58

iptables映射端口

2010-03-25 17:39:37

Python web

2009-11-23 16:43:03

PHP5安装GD库

2010-02-24 10:41:28

WCF服务保护

2010-06-18 11:31:48

SQL Server数

2010-08-02 17:20:12

nfs启动Linux

2010-07-26 13:30:23

2009-12-31 15:36:13

SilverLight

2010-08-02 12:34:09

ADSL代理设置

2009-12-31 15:36:13

SilverLight

2009-12-07 18:43:29

WCF框架
点赞
收藏

51CTO技术栈公众号