项目安全性

项目安全性是传统数据库安全性的替代方案,后者在数据库级别静态分配特权。它不是为用户分配应用于特定数据库中所有 CR 和任务的静态特权,而是为用户分配一组相关 CR 的上下文中的动态特权。这些动态特权在项目上下文中进行定义,只要用户处于属于项目的 CR 的上下文中,就会应用这些特权。

例如,Tom 在处理 SystemA CR 时具有“小组负责人”(提交者、分配者和审阅者)的特权,但对于 SystemB CR,他只具有“添加者”特权。根据所处理的项目,Tom 具有不同的特权。CR 所在的数据库与此无关。与此相关的是其项目成员资格。 确定了上下文和特权的项目才能这样做。

注: IBM® Rational® Change 中的术语项目的语义与 IBM Rational Synergy 中的不同。Rational Change 项目用于定义一组相关的 CR,并向该上下文中的用户组分配角色。Rational Synergy 项目是由相关文件、目录或其他项目组成的用户定义的组。

动机

项目安全性解决两个主要问题:
  • 分配特权时详细程度不够

    用户通常在一个组织中扮演不同的角色。在上例中,Tom 在一个项目中是“小组负责人”,而在另一个项目中只是“添加者”。 传统的数据库安全性限制为每个数据库一组特权。因此必须将项目分散到不同的数据库中,才能确保正常的访问级别。或者,对于需要较少访问权的项目,必须为其授予不需要的特权。无论哪种解决方案都不理想。

  • 用户管理

    用户管理在各产品间分散执行。 帐户通过 IBM Rational Directory Server 进行管理,而特权在 Rational Change 中进行分配。 此外,不授予用户完全管理访问权,就无法分布用户管理。

优点

项目安全性提供了以下优点:
  • 特权管理

    逻辑上关联的特权可以分组成角色,使管理得到简化。

  • 使用 Rational Directory Server 中的现有组

    添加 Rational Change 用户变得与在 Rational Directory Server 中将用户分配给相应组一样容易。 通过项目定义,可以在 Rational Change 中自动授予角色和特权。

  • 分布式管理

    每个项目的管理都可以委派给相应的人员。

项目安全性提供的简单用户管理在中央方式下比在独立方式下更能全面实现。Rational Change 用户无需通过 Rational Synergy 在 ccm users 中进行定义。数据库访问权完全从 Rational Change 特权进行管理。在独立方式下,除非数据库已明确指定,否则用户必须在数据库中进行定义后才能访问其 CR。

与其他类型安全性进行交互

项目安全性使用管理变更请求流程(生命周期安全性)中定义的安全性规则和特权。这些规则可管理转换以及各个属性如何进行修改。与此相反,读/写安全性(通过访问控制表或 ACL)可管理 CR 是作为一个整体可视还是可以修改。 如果 CR 可以通过读/写安全性进行修改,那么其转换和各个属性由生命周期和项目安全性进行管理。

项目安全性组成部分

以下要素会影响项目安全性:
  • 一组 CR,也称为项目内容。
  • 项目成员,即组或各个用户。
  • 角色和特权。

    特权在 CR 流程中使用,这样就能修改属性并允许进行转换。角色是一组特权。

可以定义任意数量的项目,还可以创建子项目。子项目派生自现有项目,但在作用域方面更具体。


反馈