【问题标题】:Cannot use SASL if Hadoop security is not enabled如果未启用 Hadoop 安全性,则无法使用 SASL
【发布时间】:2018-02-04 13:01:27
【问题描述】:

我正在尝试访问受 kerberos 保护的 accumulo,这是我的代码 sn-p:

Instance inst = new ZooKeeperInstance(instanceName, zooServers);

KerberosToken kt = new KerberosToken(principal, f1,false);

连接器连接 = inst.getConnector(principal, kt);

我得到如下异常:

org.apache.accumulo.core.client.AccumuloException: java.lang.RuntimeException: 如果未启用 Hadoop 安全性,则无法使用 SASL

在 org.apache.accumulo.core.client.impl.ServerClient.execute(ServerClient.java:67)

at org.apache.accumulo.core.client.impl.ConnectorImpl.<init>(ConnectorImpl.java:67)
at org.apache.accumulo.core.client.ZooKeeperInstance.getConnector(ZooKeeperInstance.java:248)
at demo.prg1.AccumuloConnection.main(AccumuloConnection.java:49)

原因:java.lang.RuntimeException:如果未启用 Hadoop 安全性,则无法使用 SASL

【问题讨论】:

    标签: java hadoop kerberos sasl accumulo


    【解决方案1】:

    这是意料之中的。 Accumulo 提供 SASL 身份验证以支持 Kerberos,如在安全 Hadoop 安装上实施的那样。见the documentation here

    【讨论】:

    • 我已经按照文档中的所有步骤进行操作,但我仍然遇到同样的错误
    • 我可能误解了你的问题。听起来您说您收到此错误消息是因为 Hadoop 安全性已禁用。您是说实际上启用了 Hadoop 安全性,但您仍然收到错误消息?您是否已验证您的 Hadoop 配置在您的客户端代码的类路径中?
    • 好吧,我明白了,这都是关于 Hadoop 配置的。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-17
    • 1970-01-01
    • 2021-10-03
    相关资源
    最近更新 更多