HDFS 加密类型

发布于 2021-05-07 20:07:00 字数 2356 浏览 1475 评论 0

加密类型:

  • 卷加密。加密整个卷。
  • 应用加密。应用程序完成加密。
  • Rest 加密。加密文件或目录。这是一种端到端加密,传输的是密文数据。HDFS 系统不能访问加密后的明文数据。 详细内容参考 ​HDFS Encryption Overview

操作过程

1.创建加密区密钥

在 ranger 界面中以用户 keyadmin:keyadmin 登录。密钥管理的管理员与一般的管理员分离。
通过菜单路径 Encrypting -> Add New Key 来添加加密区密钥。密钥名称是 zonekey1

2.设置密钥策略

通过菜单路径 Access Manager -> Resource Based Policies 进入策略定义界面,点击 HDP2610_kms,这是安装kms后默认创建的策略。显示了一条初始的策略 all - keyname。编辑这个策略,将用户 jj 添加到这个策略中。如下图:

如果不添加这个策略,将来向加密目录上传文件时会报错:

put: User:jj not allowed to do 'DECRYPT_EEK' on 'zonekey1'

经测试,在 KMS 中,向策略中添加用户管用,但添加用户组不管用。在本文的最后,有社区的解决方案,向 kms-acls.xml 中添加 property,但测试也不管用。

3.创建加密区

$ kinit -kt /etc/security/keytabs/hdfs.headless.keytab hdfs-hdp2610
$ hdfs dfs -mkdir /tmp/webb   (创建目录)
$ hdfs dfs -chmod 777 /tmp/webb   (设置权限,其它用户有写权限)
$ hdfs crypto -createZone -keyName zonekey1 -path /tmp/webb   (创建加密区)

4.上传加密文件

不能直接用 hdfs 用户(HDFS的管理用户)访问加密目录(hadoop基于安全的考虑),所以要使用 jj 用户来测试。

$ kadmin.local -q "addprinc jj”
$ kinit jj@AMBARI.APACHE.ORG  (换用户jj登录)
$ hdfs dfs -put ca.key /tmp/webb

权限控制相关

在 KMS 的配置 Advanced dbks-site (文件路径是 /etc/ranger-kms/2.6.1.0-129/0/dbks-site.xml)中有个属性 hadoop.kms.blacklist.DECRYPT_EEK,是个用户黑名单,名单上的用户不能访问 Ranger 的解密功能。黑名单的默认值是 hdfs。所以在默认情况下:

$ kinit -kt /etc/security/keytabs/hdfs.headless.keytab hdfs-hdp2610
$  hdfs dfs -copyFromLocal ca.crt /tmp/webb
copyFromLocal: User:hdfs not allowed to do 'DECRYPT_EEK' on 'zonekey1'

如果把这个默认值改掉,如随便输入个不存在的用户,保存并服务重启后就可以执行上面的向加密区上传文件的命令了。

其它

查看加密区列表:

$ kinit -kt /etc/security/keytabs/hdfs.headless.keytab hdfs-hdp2610
$ hdfs crypto -listZones
/tmp/webb zonekey1

删除加密区:

$ hdfs dfs -rm -R /tmp/webb

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

玍銹的英雄夢

文章 0 评论 0

我不会写诗

文章 0 评论 0

十六岁半

文章 0 评论 0

浸婚纱

文章 0 评论 0

qq_kJ6XkX

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文