WEB开发网
开发学院软件开发Java Java Web 服务: WS-Security 的大开销 阅读

Java Web 服务: WS-Security 的大开销

 2009-11-05 00:00:00 来源:WEB开发网   
核心提示: plain:无安全性ssl:使用 HTTPS 连接到服务器username:请求中使用 WS-Security 纯文本 UsernameTokensign:WS-Security 主体和报头签名,使用时间戳encr:WS-Security 主体加密signencr:WS-Security 主体和

plain:无安全性

ssl:使用 HTTPS 连接到服务器

username:请求中使用 WS-Security 纯文本 UsernameToken

sign:WS-Security 主体和报头签名,使用时间戳

encr:WS-Security 主体加密

signencr:WS-Security 主体和报头签名,使用时间戳和主体加密

实际测试时间从 plain 配置的 4 秒到 signencr 配置的 55 秒。图 1 显示了相对测试时间,为便于比较使用了相对 plain 配置时间的倍数:


图 1. 测试时间比较
Java Web 服务: WS-Security 的大开销

从 图 1 中可以看出,Secure Sockets Layer (SSL) — 从技术上说,现在应该称作 Transport Layer Security (TLS),但本文仍然使用为人所熟知的旧表示方法 — 加密所提供的性能接近无保护措施时的性能水平(但其处理大消息比处理小消息的性能要好,处理小消息所花的时间要长 80%,处理大消息所花的时间要长 20%)。另一方面,使用 WS-Security 会造成性能显著降低。仅在请求消息上添加简单的 UsernameToken 报头会造成性能降低到 SSL 处理小消息时的性能水平,但比使用 SLL 处理大消息时的性能慢 几倍。在签名与加密相结合的情况下,测试时间比无保护措施下要长 2,100%。

从一定程序上说,WS-Security 带来的这种性能上的影响归因于 Rampart 处理程序实现的缺陷,这会造成每次有 Rampart 参与时都将各请求和响应消息转换成 Document Object Model (DOM) 格式(即使未对消息执行任何安全性处理)。应该在 Rampart 1.5 发行版中修复此问题以便它可以兼容 Axis2 1.5。根据修复的实现方式,它可以显著改善 UsernameToken 测试的运行时间。但是,即使修复了此问题可能也不会影响其他的 WS-Security 运行时间。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:Java Web 服务

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接