设为首页 加入收藏

TOP

《Hadoop高级编程》之为Hadoop实现构建企业级安全解决方案(五)
2014-11-24 00:40:57 来源: 作者: 【 】 浏览:75
Tags:Hadoop 高级 编程 之为 实现 构建 企业级 安全 解决方案
经配置好的虚拟机(VM)。Sqrrl公司的网站上提供一个独立的亚马逊机器实例(AMI),用于Apache Accumulo的快速入门,并且该公司还提供一个在Oracle VirtualBox上预先配置好的VM。更多详情请参见位于http://www.sqrrl.com/的网站,以及位于http://blog.sqrrl.com/post/40578606670/ quick-accumulo-install/的VM。

Accumulo针对快速获取键对应的值做了优化。为此,开发的Accumulo客户端(在这种情况下,客户端就是Accumulo shell)要创建一个对值进行迭代的扫描器。正如在代码清单12-1中所看到的那样,scan命令允许你在创建的新表——universitydata——中对值进行迭代(以root身份运行,而root对表中的所有内容均有访问权限)。

代码清单12-1:查看数据

root@accumulo universitydata> scan
 
Kirk Rest Address:111Carson Ave, Richmond VA [ADMIN]
Kirk RestGrade:Calculus 1 [ADMIN] B
Kirk RestGrade:Organic Chem [ADMIN] A
Kirk RestGrade:Radical Presbyterianism [ADMIN] D
Kirk Rest MedicalTest Report:Cholesterol [MEDICAL] 200
Kirk Rest NedicalTest Report:Biopsy [MEDICAL] Negative
Kirk RestPayment:Semester Payment [ADMIN] 1000
Kirk RestPhone:8045550005 [ADMIN]
Kirk Rest PoliceCharge:Curfew Violation [ADMIN|POLICE] Pending Hearing
Kirk Rest PoliceCharge:DUI Arrest [ADMIN|POLICE] Guilty
Kirk Rest RunningTest:10K [COACH] 56
Kirk Rest RunningTest:5K [COACH] 27
Kirk RestSSN:99999999 [ADMIN]
Kirk Rest Weight:170 [MEDICAL|COACH]

为演示单元格可见性的示例,需要创建下列用户:

● 医生(drhouse),为其分配MEDICAL角色

● 管理员(denyseAccountant),为其分配ADMIN角色

● 教练(coachTark),为其分配COACH角色

● 警察局长(chiefDoug),为其分配POLICE角色

如代码清单12-2所示,使用shell来为所有这些能够读取表的用户分配访问权限(授予他们每个人Table.READ权限),并使用setauths命令为他们分配用于可见性的适当角色。

代码清单12-2:分配访问权限和用户视图

root@accumulo universitydata> grantTable.READ -t universitydata -u drhouse
root@accumulouniversitydata> setauths -s MEDICAL -user drhouse
 
root@accumulouniversitydata> grant Table.READ -t universitydata -u
denyseAccountant
root@accumulouniversitydata> setauths -s ADMIN -user denyseAccountant
 
root@accumulo universitydata> grant Table.READ -t universitydata -ucoachTark
root@accumulouniversitydata> setauths -s COACH -user coachTark
 
root@accumulo universitydata> grant Table.READ -t universitydata -uchiefDoug
root@accumulo universitydata>setauths -s POLICE -user chiefDoug

最后,为展示Accumulo现在将保护对表的访问,以每个用户的身份登录并使用Accumulo shell。对universitydata表进行扫描(或迭代)。代码清单12-3展示了如何以用户coachTark、drHouse、denyseAccountant和chiefDoug的身份登录,并对表进行迭代,而且表基于每个用户的权限提供了访问控制。

代码清单12-3:演示用户的角色和可见性

root@accumulo universitydata> user coachTark
Enter password foruser coachTark: *********
 
coachTark@accumulouniversitydata> scan
Kirk Rest RunningTest:10K [COACH] 56
Kirk Rest RunningTest:5K [COACH] 27
Kirk Rest Weight:170[MEDICAL|COACH]
 
root@accumulouniversitydata> user drhouse
 
Enter password foruser drhouse: *******
drhouse@accumulouniversitydata> scan
 
Kirk Rest MedicalTest Report:Cholesterol [MEDICAL] 200
Kirk Rest NedicalTest Report:Biopsy [MEDICAL] Negative
Kirk Rest Weight:170[MEDICAL|COACH]
 
drhouse@accumulouniversitydata> user denyseAccountant
 
Enter password foruser denyseAccountant: ******
denyseAccountant@accumulouniversitydata> scan
 
Kirk Rest Address:111Carson [ADMIN]
Kirk RestGrade:Calculus 1 [ADMIN] B
Kirk Rest Grade:OrganicChem [ADMIN] A
Kirk RestGrade:Radical Presbyterianism [ADMIN] D
Kirk RestPayment:Semester Payment [ADMIN] 1000
Kirk RestPhone:8045550005 [ADMIN]
Kirk Rest PoliceCharge:Curfew Violation [ADMIN|POLICE] Pending Hearing
Kirk Rest PoliceCharge:DUI Arrest [ADMIN|POLICE] Guilty
K
首页 上一页 2 3 4 5 6 7 8 下一页 尾页 5/9/9
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇cassandra cql order by实验 下一篇海量文件或数据 导致高并发,高流..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: