gpt4 book ai didi

hadoop - 在 Hive 中授予权限

转载 作者:可可西里 更新时间:2023-11-01 15:32:45 28 4
gpt4 key购买 nike

我正在尝试使用 Hortonworks Sandbox HDP2.2 作为单节点系统在 Hive 14.0 上设置授予权限。这个问题类似于 3 月份未回答的问题:grant permissions in hive does not work on hdp2.2 .

我遵循了 a Hive-Wiki 的配置步骤.

登录到 hive shell(使用 root 的 ssh)后,我尝试了:

CREATE ROLE testing;

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Failed to retrieve roles for root: Metastore Authorization api invocation for remote metastore is disabled in this configuration.

如果我对另一个使用 hue/beeswax 的用户进行同样的尝试,则查询完成。如果我这样做

SHOW ROLES;

我收到此错误,没有任何日志详细信息:

Expected state FINISHED, but found ERROR

我的设置是这些(用 blanc 制作标签以在此处显示)

  • hive-site.xml(在 hive-wiki-link 中列出的)

    <property>
    <name>hive.server2.enable.doAs</name>
    <value>false</value>
    </property>
    <property>
    <name>hive.users.in.admin.role</name>
    <value>hue,hive</value>
    </property>
    <property>
    <name>hive.security.metastore.authorization.manager</name>
    <value>org.apache.hadoop.hive.ql.security.authorization.StorageBasedAuthorizationProvider,org.apache.hadoop.hive.ql.security.authorization.MetaStoreAuthzAPIAuthorizerEmbedOnly</value>
    </property>
    <property>
    <name>hive.security.authorization.manager</name>
    <value>org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdConfOnlyAuthorizerFactory</value>
    </property>
  • hiveserver2-site.xml(所有设置)

    <property>
    <name>hive.security.authorization.enabled</name>
    <value>true</value>
    </property>
    <property>
    <name>hive.security.authorization.manager</name>
    <value>org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory</value>
    </property>
    <property>
    <name>hive.security.authenticator.manager</name>
    <value>org.apache.hadoop.hive.ql.security.SessionStateUserAuthenticator</value>
    </property>
    <property>
    <name>hive.metastore.uris</name>
    <value>''</value>
    </property>
    <property>
    <name>hive.conf.restricted.list</name>
    <value>hive.security.authorization.enabled,hive.security.authorization.manager,hive.security.authenticator.manager</value>
    </property>

希望大家有想法。

[编辑]hive-site.xml 中的设置已经设置 - 我没有做任何更改。

[Edit2]更改设置后,我重新启动了 hiveserver2 并重新启动了沙箱。

[Edit3]每个用户都会收到错误消息,不仅是 root 用户(您可以在错误消息中看到)。如果我尝试使用管理员角色 (hive-site.xml) 的用户,例如“hive”,我会遇到同样的错误。

最佳答案

能够使其可运行 - thanks to Thejas Nair of Hortonworks .

以下是要点:

  • 您应该使用 Ambari 更改所有设置。
  • 不要更改hive.metastore.uris设置
  • 手动更改 hive.security.authorization.managerhiveserver2-site.xml 属性
  • 复制hiveserver2-site.xml/etc/hive/conf.server/
  • 重启 hiveserver2
  • 只对 SQL 权限使用直线

关于hadoop - 在 Hive 中授予权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30080203/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com