在Windows下创建非特权用户并让其执行Hive语句,可以按照以下步骤进行:

  1. 打开命令提示符窗口(以管理员身份运行)。

  2. 使用以下命令创建一个新用户:

    net user <username> <password> /add
    

    其中,<username>表示用户名,<password>表示密码。

  3. 使用以下命令将新用户添加到本地组“Users”中:

    net localgroup Users <username> /add
    
  4. 打开Hadoop安装目录下的etc/hadoop/hadoop-policy.xml文件,找到以下代码块:

    <policy domain="security" >
      <permission
         name="security"
         actions="impersonate"/>
    </policy>
    

    将其替换为:

    <policy domain="security" >
      <permission
         name="security"
         actions="impersonate"/>
      <grant
         principal="<username>"
         permission="*"
         action="impersonate"/>
    </policy>
    

    其中,<username>表示步骤2中创建的新用户的用户名。

  5. 打开Hive安装目录下的conf/hive-site.xml文件,添加以下配置:

    <property>
      <name>hive.server2.enable.doAs</name>
      <value>true</value>
    </property>
    <property>
      <name>hive.server2.proxy.user.<username></name>
      <value>*</value>
    </property>
    

    其中,<username>表示步骤2中创建的新用户的用户名。

  6. 重新启动Hive服务。

现在,可以使用新创建的非特权用户登录到Hive,并执行Hive语句。例如:

beeline -u jdbc:hive2://localhost:10000/default -n <username> -p <password>

其中,<username><password>分别表示步骤2中创建的新用户的用户名和密码。登录后,可以使用show tables;等Hive语句进行操作

如何在windows下创建非特权用户去执行hive语句

原文地址: https://www.cveoy.top/t/topic/fjwi 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录