【发布时间】:2021-02-04 13:31:31
【问题描述】:
从 HDP 3.0 开始,WebHDFS UI(即端口 50070 上的 namenode UI 文件浏览器)现在包含一个可用于删除 HDFS 文件的 bin 图标。似乎是通过调用 rest api DELETE 挂钩来做到这一点,但这样做似乎也绕过了任何文件或文件夹权限。 换句话说,任何可以访问 50070 上的 UI 的人现在都可以删除任何 HDFS 文件。
有没有办法让集群用户可以访问 WebHDFS UI,但防止他们删除文件?
可能的想法可能是以某种方式禁用或阻止 DELETE 挂钩,使整个 WebHDFS 成为只读或实施某种形式的身份验证,同时保持 UI 可访问。社区对此有何建议?
【问题讨论】:
-
默认情况下,webUI 并不安全。您需要启用 Kerberos + SPNEGO / 使用 Knox 来完全保护该端点
-
有人不想要 Kerberos 有几个原因: 1. 学习曲线(kdc、keytabs 都不是通过 GUI 管理的) 2. Kerberos 身份验证会影响每个用户。 3. WebHDFS、Yarn、Oozie UI 都被 Kerberos 完全阻止,再次允许使用并非易事,因为您必须开始深入研究浏览器如何进行身份验证。 4.即使克服了上述所有问题,您仍然会遇到用户登录后如何管理hdfs“删除”权限的问题。Kerberos毕竟只进行通过/失败检查。
-
当然,这一切都有效,但没有它,集群和端点都是安全的,并且依赖于用户名的所有其他操作都作为文字字符串传递。例如。你可以伪造a url parameter on webhdfs to impersonate any valid user
标签: hadoop hdfs ambari webhdfs