【发布时间】:2018-07-05 08:04:55
【问题描述】:
我实际上是在尝试在 HDP 集群(非 Kerberized)中进行一些自定义安全设置。用例是 hbase,kafka 必须实现授权,但不使用 kerberos。只能避免人为错误,因此没有理由使用密码。全部在 Java 中。
当然,没有身份验证就没有授权(这是 Kerberos 发挥作用的地方)。我能够在 Kafka 代理上实现授权(这个,即使在 kerberized 集群上,代理也可以配置为从 GSSAPI 更改为 PLAIN),使我自己实现了一个 LoginModule,它只读取一个 Jaas 文件:
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 制作的实现?提前致谢! :)
【问题讨论】:
标签: authentication authorization hbase kerberos hortonworks-data-platform