IBM DB2实现行和列访问控制中使用场景

该场景演示 ExampleBANK,这是一个拥有庞大客户群和许多分行的银行机构,它是行权限和列掩码的用户。ExampleBANK 使用行权限和列掩码来确保其数据库策略可以反映公司对隐私和安全性的要求,以及管理业务目标。这些要求可以概括如下:

• 柜员只可以看到自己的分行客户
• 客户服务代表和电话营销员可以看到所有客户
• 账户号码只能被客户服务代表在使用账户">更新应用程序时访问。此应用程序通过存储过程 ACTPROCS.PROCUPD 识别。否则,只有账户号码的最后四个数字是可见的。其余数字均用 X 替换。

客户信息存储在一个名为 CUSTOMER 的表中,而银行员工信息存储在一个名为 INTERNAL_INFO 的表中。创建这两个表的 SQL 语句如下:

CREATE TABLE EXAMPLEBANK.CUSTOMER      ( ACCOUNT VARCHAR(19),      NAME VARCHAR(20),      INCOME INTGER,      BRANCH CHAR(1)      );      CREATE TABLE EXAMPLEBANK.INTERNAL_INFO      ( HOME_BRANCH CHAR(1),      EMP_ID VARCHAR(10)      );    

柜员、客户服务代表和电话营销员分别是数据库角色 TELLER、CSR 和 TELEMARKETER 的成员。对 CUSTOMER 表的 SELECT 特权被授予这三个角色。用户 Amy、Pat 和 Haytham 分别是柜员、客户服务代表和电话营销员。此外,过程 ACTPROCS.PROCUPD 上的 EXECUTE 特权被授予 CSR 角色。用于建立这些角色的 SQL 语句如下:

CREATE ROLE TELLER;   GRANT SELECT ON EXAMPLEBANK.CUSTOMER TO ROLE TELLER;   GRANT ROLE TELLER TO USER AMY;    CREATE ROLE CSR;   GRANT SELECT ON EXAMPLEBANK.CUSTOMER TO ROLE CSR;   GRANT EXECUTE ON PROCEDURE ACTPROCS.PROCUPD TO ROLE CSR;   GRANT ROLE CSR TO USER PAT;    CREATE ROLE TELEMARKETER;   GRANT SELECT ON EXAMPLEBANK.CUSTOMER TO ROLE TELEMARKETER;   GRANT ROLE TELEMARKETER TO USER HAYTHAM; 

我们假设表 CUSTOMER 和 INTERNAL_INFO 已被填充,并且其内容如下:

ACCOUNT NAME INCOME BRANCH 1111-2222-3333-4444 Alice 22,000 A 2222-3333-4444-5555 Bob 71,000 B 3333-4444-5555-6666 Carl 123,000 B 4444-5555-6666-7777 David 172,000 C

表 1:CUSTOMER 表

EMP_ID HOME_BRANCH Amy A Pat B Haytham C

表 2:INTERNAL_INFO 表

时间: 2024-09-20 12:13:54

IBM DB2实现行和列访问控制中使用场景的相关文章

IBM DB2 Express-C 9.5.2中激动人心的新特性

或许您已经知道,DB2 Express-C 是 DB2 免费的社区版本.您可以将它应用在产品中,或者在应用系统中分发,或者只是为了简单的开发目的而使用它,并且所有这些都是免费的!尽管 DB2 Express – C 只能使用两个处理器和 2G 内存,但是您可以在任何大小的服务器上安装它,而且在数据库的大小上是没有任何限制的.与其他厂商提供的社区版本相比,这是相当慷慨的捐赠了. DB2 Express-C 的 9.5 版是在 2007 年 11 月发布.从那时起,几个重要的改进和新的特性已被添加到

IBM DB2传统的行和列访问控制方法

为了遵守世界各地多个国家的各种政府法规和行业标准,组织需要实施程序和方法来确保信息得到充分保护.这些法规和标准的规定,个人只允许访问执行其工作所需要的信息子集.例如,根据 US Health Insurance Portability and Accountability Act (HIPAA),医生被授权查看自己的病人的医疗记录,但没有权利查看其他病人的记录.同样,根据 Payment Card Industry Data Security Standard (PCI DSS),信用卡号等持卡

IBM DB2 Express-C 10.1免费版的价值

在 6 年中经过无数更新之后,DB2 Express-C 10 终于在 2012 年 4 月 30 日得以发布,它可供任何人下载或在云上免费使用.我们不会再提供其他使用方式. DB2 Express-C 如何避免变成试用软件 商用产品提供免费版在 2012 年已不再是件新鲜事.开放源码运动带来了人们对免费产品期待的一种气氛,并且许多软件提供商也以发布其商用产品的免费版本来回应这一运动(出于某种原因,律师不喜欢 "免费" 这个词).提供商用产品免费版并不是一项容易的决定.毕竟,如果一个产

利用行和列安全性提供特定于国家和地区的数据视图

假设您的企业决定将所有单独的数据库和数据集市整合为单独一个企业http://www.aliyun.com/zixun/aggregation/8302.html">数据仓库.除了必要的技术工作之外,整合数据集市可能带来诸多挑战.构建企业数据仓库往往意味着改动现有策略.创建新策略.组织重组.审查和更改最佳实践,依此类推. 当然,整合同样也能带来许多优势.举例来说,通过消除数据孤岛,多个业务线将能够访问相同的信息,允许所有人根据相同的信息制作报表,最终提高报表准确性. 将来自多个国家(行政区)

在批处理系统中引入IBM DB2 Analytics Accelerator

IBM DB2 Analytics Accelerator 是一个工作负载优化设备,它使公司能够将业务洞察集成到流程中,从而推进成功战略的实施.它将 System z® 服务质量和 IBM DB2 Analytics Accelerator 的硬件加速分析相结合,能够在高度安全并且可靠的环境中加快复杂查询速度,提供前所未有的响应时间. DB2 Analytics Accelerator 带来的一个关键要素是,它透明地集成到 DB2 中,这支持在运行原封不动的工作负载和查询的同时,自动获得更快的响

matlab中如何提取数据文件中的特定行和列?

问题描述 matlab中如何提取数据文件中的特定行和列? 一个数据文件,我想提取它的第一到第四列,以及第九列 和第1到500行,以及501到1000行? 解决方案 data = []; data = original(:,1:4);其他类似

vista-VISTA上安装IBM DB2总是启动不了,各位我是新手,求各位大神指点我这迷途中的小羔羊

问题描述 VISTA上安装IBM DB2总是启动不了,各位我是新手,求各位大神指点我这迷途中的小羔羊 每当我点开的时候就会弹出这个,是我哪里设置错误?我是用安装向导安装的 解决方案 vista是一个失败的系统,因为份额极小,几乎厂商都不会再做和它的兼容性支持,建议在win7下试试. 解决方案二: 电脑用win7太弱了,这个IBM DB2我查了下是支持VISTA的.但是就是会出现这个,我又下了个msvcp110.dll还是失败了,不知道大神们有没有知道原因的呢 解决方案三: 最后,由于我糟了很多罪

优化虚拟化中的IBM DB2 pureScale事务吞吐量

本文将向您介绍如何通过提供一系列高级的.划规和部署的最佳实践,以及一系列简易的优化步骤来应对这一挑战,使用的样例数据库环境为 IBM POWER7® 服务器运行一个 IBM DB2® pureScale®. 如今,数据库服务器有可能在一个虚拟机 (VM) 上实现,其中处理器.内存.磁盘和网络组件都是从物理机器上的一个共享的可用资源池中进行分配.这使得可以将多个http://www.aliyun.com/zixun/aggregation/13999.html">工作负载整合到单个服务器上.

Excel2007中隐藏或显示行和列的方法

  Excel 2007中,可以使用"隐藏"命令隐藏行或列,将行高或列宽更改为 0(零)时,也可以隐藏行或列.使用"取消隐藏"命令可以使其再次显示. 隐藏行或列 1.选择要隐藏的行或列. 如何选择单元格.区域.行或列 选择 操作 一个单元格单击该单元格或按箭头键,移至该单元格. 单元格区域单击该区域中的第一个单元格,然后拖至最后一个单元格,或者在按住 Shift 的同时按箭头键以扩展选定区域. 也可以选择该区域中的第一个单元格,然后按 F8,使用箭头键扩展选定区域.