hive任务提交的相关权限认证详析
最近在研究Hue,遇到一个问题,在HiveEditor写一个HQL,提交后会报权限错误,类似这样的Authorizationfailed:NoprivilegeSelectfoundforinputs&n..
最近在研究Hue,遇到一个问题,在Hive Editor写一个HQL,提交后会报权限错误,类似这样的
Authorization failed:No privilege 'Select' found for inputs {database:xxx, table:xxx, columnName:xxx}. Use show grant to get more details. Hue的登录用户是hadoop,使用cli方式查询的时候,是没问题的,但是使用Hue连接HiveServer2的方式,就查询不了对应的表了,排除Hue的干扰,使用Beeline来连接HiveServer2,同样报权限的错误,堆栈信息如下图
根据堆栈信息大概梳理了下源码(只列出比较重要的代码),Hive提交SQL的权限验证流程如下
Hive的权限验证首先会调用authorizeUserDBAndTable验证用户是否对访问的DB和Table有访问权限,对应到MetaStore的DB_PRIVS和TBL_PRIVS表,在进行验证的时候,会通过thrift与HiveMetaStore进程进行交互来获取MetaStore库中对应表的相关信息。如果用户对更大粒度的资源有访问权限,则会直接返回,不会再继续进行更细粒度的验证,也就是说如果用户对DB有相关的权限,则不会继续验证对Table和Column的访问权限。
查看了下DB_PRIVS表,hadoop用户对访问的数据库是有Select权限的,所以再传统CLI模式下访问是没有问题的。看上述代码也都是在预料之中,因为实际上CLI模式和HiveServer模式的权限验证是一套代码。决定remote debug下,进而发现this.getAuthenticator().getUserName()的值为hive,也即是启动HiveServer2的用户,而不是提交SQL的用户hadoop,顺藤摸瓜,找到了设置authenticator相关属性的代码

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











近年、データ ウェアハウスは企業のデータ管理に不可欠な部分となっています。データ分析にデータベースを直接使用すると、単純なクエリのニーズを満たすことができますが、大規模なデータ分析を実行する必要がある場合、単一のデータベースではニーズを満たすことができなくなり、大量のデータを処理するデータ ウェアハウスを使用する必要があります。 。 Hive は、データ ウェアハウス分野で最も人気のあるオープン ソース コンポーネントの 1 つで、Hadoop 分散コンピューティング エンジンと SQL クエリを統合し、大量のデータの並列処理をサポートできます。同時に、Go 言語では次を使用します。

データ処理の重要性が高まるにつれて、ビッグデータ分析がますます一般的になってきています。ただし、多くの企業はビジネス分析プラットフォームに多額の費用を費やしたくないかもしれません。オープンソース ソリューションは、これらの企業に実行可能な選択肢を提供します。この記事では、PHP を使用してオープンソースの Hive ビッグ データ分析プラットフォームを実装する方法について説明します。 Hive は、SQL を介して Hadoop 上の大規模なデータ セットをクエリおよび管理できる Hadoop ベースのデータ ウェアハウス システムです。 SQL に似た HiveQL 言語を使用してクエリを実行します

PHP は、ほぼすべての業界で広く使用されているサーバーサイド プログラミング言語です。この記事では、ビッグ データ処理における PHP の特別な役割について説明します。特定の状況下では、PHP は ApacheHive と連携して、リアルタイムのデータ処理と分析を実現できます。まずはHiveについて紹介していきます。 Hive は、Hadoop ベースのデータ ウェアハウス ソリューションです。構造化データを SQL クエリにマッピングし、クエリを MapReduce タスクとして実行できます。

PHP は、Web 開発で広く使用されているプログラミング言語です。 Web アプリケーションでは、セキュリティが非常に重要であり、権限の認証と認可は、Web アプリケーションを不正アクセスから保護するための重要な側面の 1 つです。この記事では、PHP が権限の認証と認可を実装する方法を学びます。権限認証は、特定のユーザーがリソースにアクセスしたり、操作を実行したりする権限を持っているかどうかを確認することです。この機能を実現するには、まずユーザー認証や、ユーザーが特定のリソースへのアクセス権限を持っているかどうかを確認するなどのユーザーシステムが必要です。認証により有効になります

ソフトウェアを最新の状態に保ち、信頼できるソースからのみファイルをダウンロードすることはサイバーセキュリティの標準的な慣行ですが、最近のマルウェア攻撃の増加を考慮すると、この分野でさらなる教育が必要であることは明らかです。そのために、Varonis フォレンジック チームは、Hive ランサムウェアを使用する攻撃者が最新の一連の攻撃でどのように Microsoft Exchange Server をターゲットにするかに関するガイダンスを提供しました。知らない人のために説明すると、Hive はサービスとしてのランサムウェア モデルに従っています。 Microsoft は既知の脆弱性について 2021 年に E をターゲットにしていますが、

CentOS7 に Hive をインストールして構成する場合は、次の手順を実行できます。 Java がインストールされていることを確認します。 まず、Java が CentOS7 にインストールされていることを確認します。次のコマンドを使用して、Java がインストールされているかどうかを確認できます。 java-version Java がインストールされていない場合は、必要に応じて適切な Java バージョンをインストールしてください。 Hive をダウンロードする: ApacheHive の公式 Web サイト () にアクセスし、Hive の最新の安定バージョンをダウンロードします。 Hive 圧縮パッケージを解凍します。次のコマンドを使用して、Hive 圧縮パッケージを解凍します。 tarxvfzhive-x.x.x.tar.gz これにより、Hive が現在のディレクトリに解凍されます。環境変数を構成します: ターミナルを開き、

Microsoftの関係者は、Google Chrome、ChromiumEdge、Discord、およびその他のいくつかのアプリケーションが、Microsoftの組み込みウイルス対策ソフトウェア「WindowsDefender」によって「Behavior:Win32/Hive.ZY」としてフラグ付けされたという広範な報告を確認しました。テクノロジー大手は声明の中で、今後数時間以内に全員に公開される予定の修正に取り組んでいることを認めた。では、「Behavior:Win32/Hive.ZY」とは一体何でしょうか? Microsoft のセキュリティ ポータルに掲載された文書によると、「Behavior:Win32/Hive.ZY」とマークされたファイルはすべて

Laravel にサードパーティ権限認証システムを統合する方法 はじめに: Laravel は、開発プロセスを簡素化するための便利な機能とツールを多数提供する強力な PHP 開発フレームワークです。実際の開発では、ユーザーの権限を管理するためにサードパーティの権限認証システムを統合する必要があることがよくあります。この記事では、Laravel にサードパーティ機関の認証システムを統合する方法と、具体的なコード例を紹介します。ステップ 1: サードパーティ機関認証システムをインストールする. まず、適切なサードパーティ機関認証システムを選択してインストールする必要があります。
