authentication - 无需 Kerberos 或 AD/LDAP 的 Hbase 身份验证

标签 authentication authorization hbase kerberos hortonworks-data-platform

我实际上正在尝试在 HDP 集群(不是 Kerberized)中进行一些自定义安全设置。用例是 hbase,kafka 必须实现授权,但不使用 kerberos。必须避免的只是人为错误,因此没有理由使用密码。全部用 Java 编写。

当然,没有身份验证就没有授权(这就是 Kerberos 的工作原理)。我能够在 Kafka 代理上实现授权(即使在 Kerberized 集群上,代理也可以配置为从 GSSAPI 更改为 PLAIN),从而实现我自己的实现仅读取 Jaas 文件的 LoginModule:

KafkaClient 
{
   my.package.project.authentication.NamePlateLoginModule required
   username=stuckuvurfluw;
};

是的,我知道,一个虚拟身份验证 =)。正如我所说,无需保护数据,只需避免人为错误即可。因此,在 KafkaBrokers 上,我只需要对属性进行一些更改即可更改行为并期望 PLAIN 身份验证。将 kafka acls 设置为仅允许 stuckuvurfluw 用户 same old way :

bin/kafka-acls.sh (..) --add --allow-permissions User:stuckuvurfluw (...) 

完成了..但是哦,Hbase。我无法找到任何不使用 Kerberos 来设置身份验证的方法。在客户端找不到 hbase-site.xml 或其他配置属性的属性值。

问题是,是否有除 Kerberos 之外的其他实现,我可以在其中建立我自己的“虚拟”实现,类似于为 Kafka 制作的实现?提前致谢! :)

最佳答案

我想这会有所帮助:

没办法。

来自Samson Scharfrichter的宝贵评论:

Speaking about Hadoop in general, the SIMPLE authentication mode does ensure that "Only human mistakes must be avoided" > client identity is guessed on client side from (a) env variable HADOOP_USER_NAME and (b) failing that, the current Linux or Windows session user as reported by the JVM. If HBase supports ACLs in SIMPLE mode (like HDFS does) then you've got your "dummy" authentication/authorization out of the box...

关于authentication - 无需 Kerberos 或 AD/LDAP 的 Hbase 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48453625/

相关文章:

authentication - RESTful 服务认证

sql - 如何通过 WCF 连接到另一台虚拟机上的数据库?

asp.net - ASP.NET Forms 身份验证的授权安全

python - 基于客户端IP地址的 Pyramid 授权

python - 如何将百万歌曲数据集等大数据集加载到 BigData HDFS 或 Hbase 或 Hive 中?

python - DJANGO:如何允许用户更改密码?

c# - Xamarin.forms 无法使用 Xamarin.Auth 和特定的 android 平台从对象转换为 system.type

java - 使用 Spring Security 过滤器链、重定向循环进行 Wicket 授权

hadoop - 如何配置 hbase 写入文件系统?

hadoop - 使用 HADOOP 进行卫星图像处理