WSE 2.0倚仗WS-Addressing保护路由的安全
由于WSE 2.0全面支持WS-Addressing,则可以安全地签署和加密 SOAP 消息,而不用面对前面讲述WS-Routing时的问题。安全的基础在于WS-Addressing 标头是不可变的,中间节点无法修改它们,因此可以签署和加密消息(包括 WS-Addressing 标头)以达到用户需要的、合适的安全级别。
下面的示例演示了如何使用 WSE 2.0 代理类签署整个 SOAP 消息:
...
MyClaimsService e = new MyClaimsService();
e.RequestSoapContext.Security.Tokens.Add(GetSecurityToken());
e.RequestSoapContext.Security.Elements.Add(
new Signature(tok));
e.Submit(claim);
...
该代码产生签名的消息,不存在安全问题,建议在建立网络系统时签署或加密WS-Addressing 标头,以提升系统的安全性。
结论
通过比较WS-Routing和WS-Addressing两个分别出现在WSE1.0和WSE2.0中的WS-*类协议标准,可以看出网络服务框架中那些成员协议的沿革动力来自于第一线的市场与用户对于网络服务功能的强烈要求,任何一个IT巨头,包括微软公司为代表的那些行业垄断者们,如果不考虑来自市场的包括开源、服务性能等等来自市场前沿和用户的这些基本需求,那么等待他们的将是灭顶之灾,而不会是滚滚财源!