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

2009-12-25 作者:Judith Myerson 来源:developerWorks中国

 

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

引言

每个层次应包含的内容(相对于防御位置而言)视组织包含 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 管理工作变得更加轻松。他们能够确定在不引起系统过载的前提下可以创建和使用多少文件。

火龙果软件/UML软件工程组织致力于提高您的软件工程实践能力,我们不断地吸取业界的宝贵经验,向您提供经过数百家企业验证的有效的工程技术实践经验,同时关注最新的理论进展,帮助您“领跑您所在行业的软件世界”。

资源网站: UML软件工程组织