IBM® InfoSphere® Optim 解决方案在数据的整个生命周期对其进行管理。具体的解决方案包括:
有三种不同级别的 Optim 安全性:
回页首
回页首
让我们通过一个示例场景来查看何时可以使用这些不同的安全性类型。
一家在线零售店维护着许多客户信息、客户订单细节、销量更新和可用商品的细节。客户信息表拥有客户的敏感私人信息,包括他们的地址、社会安全号码和信用卡编号。
该零售店已经营了 10 年。每两年,该商店就会备份其历史数据。
今年,为了增加销量,该公司计划联系所有在 5 年内未购买任何产品的客户,向他们告知新产品和销量的信息。为了联系这部分客户,他们需要访问归档的数据,并将这些数据提供给不同的员工。以下员工需要使用归档的数据:
每个客户都需要归档数据的不同访问级别来完成自己的工作。必须限制访问权来保护归档文件中敏感的私人信息。表 1 描述了所需的访问特权。
表 1. 不同用户在归档文件表上的访问特权
员工名称 | Customer 表 | Sales 表 | Items 表 |
---|---|---|---|
Kevin | 完整访问权 | 完整访问权 | 完整访问权 |
John | 有限的访问权(不能访问客户的敏感、私人信息) | 完整访问权 | 完整访问权 |
Alvin | 有限的访问权(不能访问敏感、私人信息) | 无权访问 | 完整访问权 |
在以下步骤中,我们将展示 Kevin 如何利用归档文件安全性来创建不同的访问级别。我们将使用满足我们需求的 Optim 示例数据。
在此场景中,存在以下事实:
如果环境满足这些前提条件,则执行以下步骤。
回页首
要设置 Optim 归档文件上的表级和列级用户访问权,请执行以下步骤。这个示例展示了 Kevin 如何在 2010 年的一个 Optim 归档文件上设置表级和列级用户访问权,以及设置不同用户浏览同一个归档文件时的行为。
在下面几节中,我们将分解上面的每个步骤,详细展示 Kevin 如何在 Optim 归档文件上启用表级和列级用户访问权。
回页首
在归档文件上启用安全性的第一步是在 Optim 目录上启用安全性。在这个示例中,Optim 目录名为 OPTIMDIR 。
1.1. 打开 IBM InfoSphere Optim Configuration 工具。
1.2. 在 InfoSphere Optim Configuration 用户界面中,导航到第二个名为 “Tasks” 的选项卡。在下拉菜单中选择 Configure Security for an Optim Directory 。
图 1. 为一个 Optim 目录配置安全性
1.3. 设置需要定义安全性的 Optim 目录。为此,从选项 “Use Existing Optim Directory and Registry Entry” 下的下拉菜单中选择 Optim 目录。单击 Proceed 。在此场景中,该目录的名称为 OPTIMDIR 。
图 2. 使用现有的 Optim 目录
1.4. 在默认情况下,没有为 Optim 目录启用安全特性。要初始化安全特性,可以选择 “Initialize” 旁边的复选框。单击 Proceed 。
图 3. 初始化这个 Optim 目录的安全特性
1.5. 设置您喜欢用在 Optim 目录上的安全性选项。默认情况下,所有三种级别(功能级安全性、对象级安全性和归档文件级安全性)都是禁用的。对于我们的示例场景,Kevin 需要启用归档文件级安全性并禁用其他两种安全性。为此,在 “Security Options for this Optim Directory” 下,选择 Disable 并单击 Proceed 。
图 4. 禁用功能级安全性
1.6. 下一个屏幕显示了 Optim 对象安全性的选项。确保 Object Security Option 已设置为 Disable 。选择 Proceed 。
图 5. 禁用对象安全性
1.7. 下一个屏幕显示了归档文件安全性的选项。在 “Security Option for this Optim Directory” 下选择 Enable 。这会在这个 Optim 目录上启用归档文件安全性。单击 Proceed 。
图 6. 启用归档文件安全性
1.8. 完成这些步骤后,您会获得一个屏幕,告诉您已经在 Optim 目录上设置了归档文件安全性选项。
图 7. 安全性配置完成
回页首
以下步骤展示了如何创建访问控制域和角色。
在此场景中,Kevin 设置了 Alvin 等客户关怀代表和 John 等销售主管的访问控制。 CCR_DEPT1 是客户关怀代表的用户 ID。为实现此操作,他需要创建一个名为 FAD_DEMO1 的新访问控制域。他为其用户 CCR_DEPT1 创建了一个名为 ROLE_A 的新角色,并将其添加到 ACD FAD_DEMO1 中。按照这些步骤设置这些员工的 ACD。
2.1. 要创建一个 ACD,可以打开 IBM InfoSphere Optim Tool。
2.2. 导航到 Options > Security > Access Control Domains。
图 8. 导航到 Access Control Domains
2.3. 您会看到在 Optim 安装和配置中创建了 Optim 管理员用户的默认 ACD
图 9. 默认访问控制域
2.4. 要创建一个新 ACD,右键单击 Default domain 并选择 New ACD 。
图 10. 启动新的 ACD
2.5. 在 Access Control Domain Editor 中,在 Description 选项卡下提供描述。对于我们的示例,Kevin 选择了 FAD 。
图 11. ACD:提供描述
2.6. 默认情况下,角色列表显示了一个名为 Optim Administrator 的角色。要创建用户指定的角色,可以右键单击 Optim Administrator 并选择 New 。
图 12. 创建新角色
2.7. 在 Role Specification 屏幕上创建一个新角色名称,并添加其他细节,比如用户/组、域和类型。
在此场景中,Kevin 提供了新角色名 (ROLE_A) 并添加了其他相关细节。客户关怀代表(比如 Alvin)使用的用户 ID 为 CCR_DEPT1 。
图 13. 新角色规范
单击 OK 以便在 Role List 下添加新角色细节。
图 14. 创建新角色
2.8. 在 File > Save 下,单击 Save 并提供一个合适的名称。在此场景中,Kevin 将 ACD 命名为 “FAD_DEMO1”。
图 15. 保存 ACD
2.9. 您会看到 Access Control Domains 屏幕上列出了新创建的 ACD。
图 16. ACD 屏幕中列出了新 ACD
回页首
创建新的 ACD 并在它之下为您的用户添加一个角色后,您可以创建一个文件访问定义 (FAD) 来定义在一些用户尝试访问该表时应用的表约束。
在此场景中,Kevin 拒绝对包含敏感销售数据的 OPTIM_SALES 表进行访问。为此,他在 OPTIM_SALES 表上创建了一个表级 FAD 来拒绝用户访问。
3.1. 要创建这种表级安全性,请导航到 Options > Security > File Access Definitions
图 17. 启动 File Access Definition 窗口
3.2. 单击 Tools > New FAD
图 18. New FAD
3.3. FAD 定义了每个用户查看一个特定表的访问权。从 Access Control Domain 下的下拉菜单中选择您创建的 ACD。在 Table List 下,添加您想要对其应用限制的表。然后单击表列表下的行并选择 Add table > From Database 。
Kevin 从下拉菜单中选择 FAD_DEMO1 ACD。在 Table List 下,他添加了完全限定的表名称 DBALIASNAME.CREATERID.TABLENAME。
图 19. 从数据库添加表
在 “AC type” 下,选择 Explicit ,以便将表 OPTIM_SALES 上的访问控制类型设置为显式。
图 20. 分配访问类型
3.4. 指定表的细节后,将要设置用户访问信息。
在 Table Access Control 中,选择要为表设置其权限所用的角色并单击 Deny 。
Kevin 选择 ROLE_A 并勾选了 “Deny” 旁边的复选框。这样可以保护 OPTIM_SALES 表并将查看权限制为 CCR_DEPT1 用户。
图 21. 拒绝 ROLE_A 的访问
3.5. 导航到 File > Save 并提供一个名称来保存 FAD,从而保存您的偏好。
图 22. 保存 FAD
3.6. 在尝试保存权限之前,Access Control List Editor 窗口将会弹出,提醒您设置您的角色的对象和 ACL 访问权。Kevin 拒绝针对 CCR_DEPT1 的所有访问,然后单击 OK 。
图 23. ACL List Editor
3.7. 您新建的 FAD 现在已在 File Access Definitions 列表中列出。
图 24. 保存的 FAD
其中捕获了用户在任何归档表 OPTIM_SALES 的归档文件上的表级访问定义。
回页首
在我们的场景中,Kevin 希望为 Alvin 和 Kevin 提供访问 OPTIM_CUSTOMERS 表的权限,但该权限仅限于该表中的某些列。表 2 显示了向不同用户授予的 OPTIM_CUSTOMER 表列的访问特权。
表 2. 不同用户在 OPTIM_CUSTOMER 列上的访问特权
用户 | 信用卡编号 | 国家 ID | 目前的销量 |
---|---|---|---|
Kevin | 是 | 是 | 是 |
John | 否 | 否 | 是 |
Alvin | 否 | 否 | 否 |
要创建列级访问,Kevin 需要为 John 等销售主管添加另一个角色,编辑之前创建的 FAD 来附加列级 FAD 细节。要在一个表中创建列级访问权,请执行以下步骤:
4.1. 导航到 Security > Access Control Domains 并打开您的 ACD。为新用户添加另一个角色并保存 ACD。请参阅第 2.6 和 2.7 步,了解如何创建新角色和用户。
在此场景中,Kevin 导航到 ACD 名称 FAD_DEMO1,为用户 SE_DEPT1 添加另一个名为 ROLE_B 的角色。
图 25. 创建 ROLE_B
4.2. 要选择要定义的列,可以导航到 Security > File Access Definitions 并打开现有的 FAD。在这个示例中,FAD 为 PTCSILK2.FAD1
4.3. 添加表名称(在本例中为 OPTIM_CUSTOMERS)并将 AC Type 保留为 none。右键单击新添加的表并单击 List Columns 。
图 26. List columns
4.4. 要向您的列添加访问定义,右键单击 column list 下的行。选择 Add column > From Database table 。
Kevin 添加表 2中的列的访问定义。
图 27. 添加来自数据库表的列
4.5. 添加您的列后,可以向您已定义的特定角色分配访问权(拒绝或允许)。选择您想要定义的列,将 AC Type 设置为 Explicit ,并为每个角色选择 Allow 或 Deny 。
添加 CREDITCARD_NUMBER 列后,Kevin 分配 Explicit 作为 AC Type。类似于在 Table Access Control 下添加用户,Kevin 添加了需要授予权限的角色。
图 28. 将列 CREDITCARD_NUMBER 的 “Deny” 访问权分配给 ROLE_A 和 ROLE_B
4.6. 图 29 和图 30 显示了 Kevin 为 NATIONAL_ID 和 YTD_SALES 列添加了表 2 中引用的访问细节。
图 29. 将列 NATIONAL_ID 的 “Deny” 访问权分配给 ROLE_A 和 ROLE_B
图 30. 将列 YTD_SALES 的 “Deny” 访问权分配给 ROLE_A 和 ROLE_B
4.7. 保存 FAD。这会在归档表 OPTIM_CUSTOMERS 的归档文件上为用户添加列级访问定义
回页首
按照以下步骤为您创建的表级和列级 FAD 创建一个归档文件。我们将看到 Kevin 为 OPTIM_SALES、OPTIM_CUSTOMERS 和 OPTIM_ITEMS 表创建了一个归档文件。
5.1. 打开 IBM InfoSphere Optim Tool 并单击 Actions > Archive 来创建一个归档请求
图 31. 打开归档请求
5.2. 添加描述和归档文件名称。Archive Index File 文本框会自动更新。
图 32. 添加描述和归档文件名称
5.3. 通过找到并添加您创建的 FAD,将您新创建的 FAD 与这个归档请求相关联。
图 33. 选择文件访问定义
图 34. Archive Request Editor 中已选定的 FAD
5.4. 单击 Edit Access Definition 按钮添加需要归档的表的细节。
图 35. 编辑访问定义
5.5. 提供您的默认限定符,启动您的表,然后在 Access Definition Editor 中添加相关的表。
在此场景中,Kevin 添加 DBALIASNAME.CREATERID 默认限定符,启动表 OPTIM_SALES,随后在 Access Definition Editor 中添加相关的表(OPTIM_CUSTOMERS 和 OPTIM_ITEMS)。
图 36. 添加默认限定符和表的细节
5.6. 单击 File -> Update and Return
图 37. 执行更新并返回
5.7. 选择 File > Save 以保存归档请求。
图 38. 保存归档请求
5.8. 保存归档请求后,单击 Run 按钮创建该归档文件。
图 39. 运行归档请求
5.9. 归档请求应成功处理并创建一个归档文件。
图 40. 正在运行的归档请求
5.10. 如果归档请求成功完成,那么您会收到一个 Archive Process Report,像下面这个 Kevin 的报告一样。
图 41. Archive Process Report
回页首
Kevin 与 Alvin 和 John 共享了他在 2010 年归档的文件。
6.1. 当 Kevin(使用他的 qaadmin 用户 ID)和 John(使用用户 ID SE_DEPT1)访问 Optim 并浏览归档文件时,他们能够查看所有三个表。
图 42. Kevin 和 John 浏览归档文件
6.2. 当 Alvin(使用他的用户 ID CCR_DEPT1)尝试浏览归档文件时,他只能查看两个表。他可以看到 OPTIM_CUSTOMERS 和 OPTIM_ITEMS,而 OPTIM_SALES 在他的视图中是隐藏的。
图 43. Alvin 浏览归档文件
6.3. 当 Kevin 尝试查看 OPTIM_CUSTOMERS 表的内容时,他能够查看所有三个列:YTD_SALES、NATIONAL_ID 和 CREDITCARD_NUMBER,这些列已对其他用户屏蔽。
图 44. Kevin 在 OPTIM_CUSTOMERS 上的访问权
点击查看大图
关闭 [x]
6.4. 当 John 尝试查看 OPTIM_CUSTOMERS 表的内容时,他可以查看 YTD_SALES,而 NATIONAL_ID 和 CREDITCARD_NUMBER 在他的视图中是隐藏的。
图 45. John 在 OPTIM_CUSTOMERS 上的访问权
点击查看大图
关闭 [x]
6.5. 当 Alvin 尝试查看 OPTIM_CUSTOMERS 表的内容时,所有三列在他的视图中都是隐藏的
图 46. Alvin 在 OPTIM_CUSTOMERS 上的访问权
点击查看大图
关闭 [x]
在我们刚才分析的场景中,Kevin 提前计划了归档文件上的用户访问类型,并创建了归档文件。如果您需要在任何现有的归档文件上应用安全性,可以使用第 3.3 和 4.4 步的略微变形来完成。无需从数据库中选择表或列,您可以执行以下步骤:
回页首
解决 Optim 归档文件的安全需求时,文件访问定义很有用。您可以在创建归档文件之前在 Optim 归档文件上应用安全性,或者可以将安全性集成在现有文件上。
您可以使用 Optim 的浏览功能来查看归档文件。
如果想要使用 ODBC 或 JDBC 连接性来访问 Optim 归档文件,可以考虑使用 Open Data Manager (ODM)。请查阅IBM Optim 知识中心,了解如何为 Optim 归档文件安装、配置和使用 ODM 的更多信息。需要以不同方式配置 ODM 才能获得文件访问定义的所有好处。 FAD 和 Optim Data Manager 技术说明 描述了 FAD 和 ODM 所需的配置更改。