专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Java教程 » 没有最好只有更好:企业SOA安全:没有最好 只有更好(图) »正文

没有最好只有更好:企业SOA安全:没有最好 只有更好(图)

来源: 发布时间:星期二, 2010年5月18日 浏览:3次 评论:0
  安全不是对面向服务架构(SOA)避而远的理由虽然SOA安全还没有完全成熟起来但如今有30%企业在使用SOA和外部客户和合作伙伴进行集成对使用简单对象访问协议(SOAP)标准Web服务而言WS-Security规范标准达到了作为项基本标准所需临界规模方面高级SOA安全解决方案――涉及合作伙伴的间联合、不可否认性(nonrepudiation)以及跨实现多层服务传播用户身份――还处于初期阶段为了从如今实用阶段进入到将来高级SOA安全阶段你就要为完善SOA安全架构建立个反复迭代设计过程;这个架构要考虑目前及将来安全要求、新兴行业规范标准、SOA安全方面产品功能重叠以及可能需要定制安全集成



  SOA安全所涉及内容

  作为设计SOA安全基础为SOA请求和响应确保安全最简单思路方法就是把它们放在虚拟专用网(VPN)里面确保外部SOA安全最常用思路方法就是使用双向安全套接层(SSL)协议该协议:

  1)允许彼此联系各合作伙伴都能验证对方身份;

  2)为安全设定了高标准

  除非黑客从服务使用者处窃取了证书和密钥否则他们甚至无法连接到基于SOA服务虽然建立VPN比较容易但基于VPNSOA安全存在粗粒度(coarse-grained)弊端也没有能力来支持些高级功能比如跨实现多层服务传播用户身份;多个安全域的间协调和联合;以及严格不可否认性另外证书日常管理可能会成为管理负担

  确保SOA安全其他重要办法包括:利用Java或.NET应用平台中现有SOA安全特性或把SOA专业产品中SOA安全特性结合起来比如企业服务总线、SOA和Web服务管理解决方案、SOA安全服务或SOA硬件设备等产品硬件设备为SOA安全提供了最简单、最专门“嵌入式”(drop-in)解决方案;不过构建整体SOA平台时需要考虑SOA专业产品具有些优缺点



  SOA架构层次

  借助应用服务器和SOA专业产品新兴功能些简单SOA安全解决方案也很诱人在过去企业直不太情愿处理实现高级应用安全要求所面临困难随着实现SOA安全机制不断成熟――加上有了更广泛架构来实现安全联合实现高级安全场景就会比较容易许多用户企业会发现高级SOA安全成了项必需要求――特别是由于数据隐私及其他法规越来越多更是如此因而有必要事先料到在业务要求需要、SOA安全成熟度允许情况下需要构建更深入额外安全功能并为的留出余地哪怕你从简单SOA安全解决方案入手也是如此

  弗雷斯特研究公司(Forrester)强烈建议你设计解决方案应当不需要应用开发人员编写和安全有关代码就算借助严格指导准则和代码审查从获得安全性以及便于将来应用安全具有灵活性、可以不断改进来看把安全性嵌入到应用代码中做法都面临很高风险要注意:不是说让开发人员不必为安全性编写代码就用不着培训应用开发人员使用套安全编码实战了安全编码是应用安全实战个单独领域涉及确保应用故障不会留下安全漏洞等问题

  为你安全策略找到适当组合行业标准、产品、集成和框架是个反复迭代过程其中需要:

  1、确认安全需求

  对照系列广泛、战略性安全功能评估自己需求这成了设计SOA安全策略和解决方案基础应根据你基于SOA解决方案主要设计重点来组织管理需求弗雷斯特研究公司采用个模型按服务使用者、请求-响应、服务提供者以及安全需求来组织管理在SOA安全设计反复迭代过程中不断前进时随着进步了解标准、产品以及贵企业有没有能力为需求所带来SOA安全支付成本可能要重新考虑所选择需求

  2、确定所用SOA安全规范标准

  你SOA安全需求为确定可能哪几项SOA安全规范标准符合需求做好了准备不过在选择你所要使用实际规范标准时必须考虑到自身基础架构中产品(现有产品以及可能需要为SOA购买产品)支持哪些规范标准几种主要规范标准包括:Web服务安全(WS-Security)、Web服务互操作性基本安全概要(WS-I Basic Security Profile)、XML加密(XML Encryption)和XML签名(XML Signature)等规范标准几种高级规范标准包括:Web服务信任(WS-Trust)、Web服务安全策略(WS-SecurityPolicy)、Web服务联合(WS-Federation)、XML访问控制标记语言(XACML)和Web服务安全通话(WS-SecureConversation)等规范标准

  3、选择为你提供核心SOA安全功能产品

  SOA安全解决方案许多功能(比如使用Web服务安全标头来执行验证)可通过区别产品类别多类产品来提供设计过程必须考虑每种选择评估其优缺点然后选择款产品(或者套相互协调产品)来提供核心SOA安全功能SOA安全解决方案有可能用到关键产品类别包括:SOA硬件设备、SOA管理解决方案、企业服务总线、SOA安全服务器、应用服务器、安全令牌服务器、授权管理服务器以及身份和访问管理解决方案

  4、配置及集成产品以便协同工作

  你可能会有多个产品来执行某项特定SOA安全功能;这些产品必须集成起来以便协同工作这项集成工作可能大部分由产品配置选项(比如对SOA硬件设备进行配置把授权工作委托给某个单次登录产品)来完成但也可能需要使用产品编程接口来构建集成组件

  5、用框架填补漏洞

  产品集成工作完毕后可能有必要为应用开发人员构建个帮助框架以便他们没必要在基于SOA应用中编写安全代码

  弗雷斯特研究公司建议使用反复迭代过程主要有两个原因首先通常不是所有应用都需要满足你所有安全需求;在构建SOA安全解决方案时初期轻型版应用也许基本上能够符合要求而后期应用需要为解决方案填充额外功能其次每次你通过就会加深了解如何利用现有各部分内容来构建最有效SOA安全解决方案

  实施SOA方面处于领导地位企业仍在为别人铺平道路些企业来说可能存在高级安全很重要种业务场景这类企业可以证明有必要投入成本来构建高级SOA安全解决方案这些领导企业会在路上帮助不断强化行业规范标准并帮助厂商不断完善产品如果贵企业眼下就需要高级SOA安全市面上有许多产品和标准可以拿来使用但要小心行事:你应当另外抽出时间针对建立原型、产品调试以及性能和扩展性测试等方面进行相应项目规划

0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: