使用IBM Rational ClearQuest在SOA中开发风险管理Web服务

日期: 2008-07-16 作者:Judith M. Myerson 来源:TechTarget中国 英文

  想要使用IBM Relational ClearQuest开发风险管理Web服务吗?本系列的第12部分将说明如何开发Web服务来管理SOA中的风险。将在其中举出若干个例子,从而说明应该如何对风险生命周期进行扩展,以处理当今世界中范围更大的威胁、漏洞和风险;并了解为何Web服务协调器角色应是较新版本的生命周期中的一个重要部分。


  引言


  本系列文章的第10部分讨论了可以如何使用深度防御来保护您的SOA。在其中介绍了包含三个防御层次的中央模型。可以使用这个模型来克服一些技术的内在弱点,并通过在最佳资源间动态地操作来进行控制。


  每个层次应包含的内容(相对于防御位置而言)视组织包含SOA的业务策略和理念而定。您在其中了解了可以如何在技术基础上构建安全策略和控制——或者反之:技术和控制可以在安全策略和过程的基础上进行构建。


  超越深度防御


  您不仅只需要深度防御。在SOA中开发Web服务时,始终存在不确定的东西。当概率分布未知时,就存在不确定性。进入风险就会使得这个概率分布从未知变为已知。风险是构成威胁的个体利用一个或多个漏洞的可能性。


  本文将描述SOA中的传统风险生命周期:风险分析、风险评估和风险管理Web服务。我们还将讨论如何对此生命周期进行扩展,以包括其他Web服务:风险预测、风险策略、风险要求和风险监视。您将了解为何在管理以实时方式动态地依赖于其他因素的文件时需要非线性队列。


  传统风险生命周期


  风险分析是一种标识风险和评估可能会出现的潜在损失的方法,用于为安全控制和保障措施提供依据。


  风险评估是标识资产、威胁和漏洞并度量风险和对风险进行优先排序的过程。可以使用定量方法或定性方法来确定威胁出现的可能性。


  估算概率就是定量方法的一个例子。而采用高(H)、中(M)和低(L)的风险等级则是定性方法的一个例子。您需要管理每个威胁将利用一个或多个漏洞的风险,并使用合理的替代方法将风险降低到可接受的程度。


  风险管理是将风险降低到可接受程度,然后实现正确的保障措施和控制,以保持该风险水平并产生有效的投资回报(ROI)。每个保障措施的ROI都是一项指标,说明您实现的保障措施在降低风险方面的投资所产生的回报情况。


  保障措施的实现并不会终止风险的分析、评估和管理过程。将会接受生命周期的早期产生的反馈信息(反映系统资产、漏洞、威胁、策略和管理方面的的重大更改),从而继续该过程。


  为了处理当今世界中更大范围的威胁、漏洞和风险,我们需要对此风险生命周期进行扩展。为了理解这其中的原因,让我们以用户在屏幕上错误地输入数据后创建系统错误时的非故意用户错误的风险为例。


  低风险还是高风险?


  在发生较大的系统错误前,由于用户在数据正确输入数据方面有良好的记录,因此会认为非故意用户错误的风险影响很低。一个解决办法是,当存在任何未正确输入的数据,向用户发出提示。另一个方法是,为用户提供系统培训。首次出现该系统错误后,风险的影响就会提高。因此实现了更新的解决办法,如在第一道防线上提供个人安全,并在验证过程上提供软件认证,以在第二道防线上防止系统受到非故意用户错误的影响。


  预测需求


  如果在用户意外创建非故意系统错误前,我们预测到更改风险等级的需求,则非故意用户错误的风险等级影响将会提前提高,从而在发生错误时其他措施已经就位。风险管理预测需要成为生命周期的第一个阶段。我们需要在风险分析阶段前添加两个阶段。即风险管理策略和要求。


  策略输入


  风险管理需求的预测研究成果可为风险管理策略提供输入信息。应当清楚地说明策略,以便可以将远景转换为目标,从而用于度量每个周期阶段的成效。例如,当策略需要将坠机的风险降低到可接受的程度时,可度量的目标将是各项指标,如计算年预期损失和保障措施ROI。


  要求规划


  以提出的目标为基础,我们将对风险管理要求进行规划,包括给定时间范围(如三年或更短)内正在开发的软件系统的重新评估。要求还应该指示为了符合评估和管理风险的安全管理要求而应该使用的文档类型,从而保护您的系统不受非故意用户错误的影响。


  监视更改


  完成了风险管理的任务后,我们将在其后添加一个生命周期阶段:监视更改。需要监视协调器对风险、威胁、漏洞、管理和组织结构方面的变更的响应情况。在性能达到特定阈值或达到系统过载点时,我们会收到电子邮件警报。


  主协调器


  将这些组合起来,就得到了经过扩展的风险Web服务生命周期,该周期包含以下Web服务,其中每个Web服务表示一个周期阶段:


  ·预测
  ·策略
  ·要求
  ·分析
  ·评估
  ·管理
  ·监视


  虽然风险管理Web服务是生命周期的一部分,但同时也是第一级Web服务的主协调器。如图1中所示,它以动态方式根据工作流和更改跟踪标准从这些Web服务获得其风险管理资源的反馈信息。



  图1. 主协调器
 
  可以使用IBM Rational ClearQuest为协调器层次结构完成此工作。


  第二级协调器


  让我们将风险分析Web服务作为第二级协调器。请参见图2。



  图2. 第二级协调器
 
  我们将分析阶段划分为以下Web服务:


  ·资产标识Web服务
  ·漏洞标识Web服务
  ·威胁标识Web服务
  ·漏洞-威胁映射Web服务


  一个跨国公司可以使用分析协调器来从位于不同的SOA中的组织单元更新资产(人员、技术和工具)信息。可以将此协调器设置为定期发送有关更新不一致的电子邮件警报。可以对漏洞和威胁标识Web服务进行类似的处理。


  漏洞-威胁映射Web服务


  风险分析中最有意义的部分就是漏洞-威胁映射服务。此服务将漏洞映射到多个威胁上,即相同的漏洞可能被多个威胁所利用。可能出现一个SOA中的多个威胁和不同SOA中的其他威胁利用原始SOA中的相同漏洞的情况。


  类似地,该服务也将威胁映射到多个漏洞,即相同的威胁可能利用多个漏洞。一个威胁可以利用一个SOA中的一组漏洞和另一个SOA中的另一组漏洞。威胁可能是无意造成的,也可能是有意造成的,还可能是人为的。


  当资产从一个位置移到另一个位置,从一个SOA移动到全局网络中的另一个SOA中,会动态地更改威胁、漏洞和风险的范围,从而使事情变得非常复杂。图3显示了将映射服务作为另一个协调器对这些更改进行协调的情况。



  图3. 第三级协调器
 
  通过使用Rational ClearQuest,可以帮助跟踪此级别的Web服务间的工作流中的更改。


  非线性协调器队列


  随着依赖其他Web服务完成一系列任务的复杂Web服务的增多,始终可能出现Web服务所运行的一个或两个文件等待其他Web服务运行的文件的时间不足够长的情况。处理这种等待时间不够的文件的一种方法是,在频繁需要其他Web服务的连接的Web服务中创建非线性队列。当接收非线性队列接收到外部Web服务的文件时,原始Web服务会将该文件移到另一个非线性队列,可在此将这些文件与已经等待了这些文件一段时间的其他文件一起进行多线程优化。Rational ClearQuest能跟踪文件连接方式的变化。


  结束语


  开发用于跨SOA管理风险的Web服务要求事前进行规划,以预测需求、概念化策略、阐明要求、进行分析和评估、管理风险和监视结果。另外,在规划阶段还要确定风险生命周期的哪个部分应为风险生命周期层次结构的不同级别的协调器。应与系统管理员、业务分析师和开发人员组成的团队进行沟通,讨论有关确保恰当管理风险的问题。


  您会发现解决这些问题后,您的风险管理Web服务开发工作变得容易得多了。可以使用IBM Relational ClearQuest通过灵活的工作流管理和缺陷与变更跟踪来实现开发流程的自动化。管理员会发现,解决了这些问题也使得他们的在风险生命周期中的Web管理工作变得更加轻松。他们能够确定在不引起系统过载的前提下可以创建和使用多少文件。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • SAP收购CallidusCloud 与Salesforce竞争

    一直被称为后台办公巨头的SAP现在似乎也想在前台办公大展拳脚。 最新的迹象是SAP收购CallidusClou […]

  • API设计如龙生九子 各不相同

    IT咨询管理公司CA Technologies对API产业做了个问卷调查,问卷内容涉及API设计风格以及管理部署的新动向。调查结果表明,JSON与XML可谓两分天下。

  • 事后诸葛亮:如何写出没有bug的软件

    网上对苹果iOS7操作系统中最新暴露出的一个严重安全漏洞的讨论读起来十分有趣。如果你还没有读过Alex Langley对此的分析,那现应该读一下,写的非常好。

  • 从头开始实现领域驱动设计

    领域描述业务;它是驱动企业的概念和逻辑的集合。如果遵循领域驱动设计(DDD)这一本质,那么领域就是应用程序中最重要的组成部分。