可以禁用WebHDFS UI删除功能吗?

问题描述

从HDP 3.0开始,WebHDFS UI(即端口50070上的namenode UI文件浏览器)现在包括一个bin图标,可用于删除HDFS文件。似乎可以通过调用rest api DELETE挂钩来做到这一点,但是这样做似乎也绕过了任何文件文件夹的权限。 换句话说,任何可以在50070上访问UI的人现在都可以删除任何HDFS文件

是否可以让群集用户访问WebHDFS UI,但是可以防止他们删除文件

可能的想法可能是以某种方式禁用或阻止DELETE挂钩,使整个WebHDFS变为只读状态或实现某种形式的身份验证,同时保持UI的可访问性。社区对此有何建议?

解决方法

我以前没有找到任何解决方案,因此我为自己进行了尝试,并提出了以下解决方案。分享他人利益:

Custom core-site: 
hadoop.http.staticuser.user = browser
hadoop.user.group.static.mapping.overrides = browser=;

这是将webHDFS用户更改为不存在的hdfs用户“浏览器”(默认情况下,它似乎获得了超级组用户特权)。

第二个属性将覆盖指定用户分配给的组。在这种情况下,我将用户“浏览器”覆盖为不属于任何组,从而删除了其超级组特权。

随后,当您检查webHDFS UI时,仍然会在文件旁边看到bin图标,但是如果单击该图标,页面将显示权限错误。