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相关属性的代码

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Ces dernières années, les entrepôts de données sont devenus partie intégrante de la gestion des données d'entreprise. L'utilisation directe de la base de données pour l'analyse des données peut répondre à des besoins de requêtes simples, mais lorsque nous devons effectuer une analyse de données à grande échelle, une seule base de données ne peut plus répondre aux besoins. À l'heure actuelle, nous devons utiliser un entrepôt de données pour traiter des données massives. . Hive est l'un des composants open source les plus populaires dans le domaine des entrepôts de données. Il peut intégrer le moteur informatique distribué Hadoop et les requêtes SQL et prendre en charge le traitement parallèle de données massives. En même temps, en langage Go, utilisez

À mesure que le traitement des données prend de plus en plus d’importance, l’analyse du Big Data devient de plus en plus courante. Cependant, de nombreuses entreprises ne souhaitent pas dépenser beaucoup d’argent dans une plateforme d’analyse commerciale. Les solutions open source offrent à ces entreprises une option viable. Dans cet article, nous verrons comment implémenter la plateforme open source d'analyse Big Data Hive à l'aide de PHP. Hive est un système d'entrepôt de données basé sur Hadoop qui peut interroger et gérer des ensembles de données à grande échelle sur Hadoop via SQL. Il utilise le langage HiveQL de type SQL pour interroger

PHP est un langage de programmation côté serveur largement utilisé dans presque tous les secteurs. Dans cet article, nous explorerons le rôle particulier de PHP dans le traitement du Big Data. Dans certaines circonstances, PHP peut collaborer avec ApacheHive pour réaliser un traitement et une analyse des données en temps réel. Tout d’abord, présentons Hive. Hive est une solution d'entrepôt de données basée sur Hadoop. Il peut mapper des données structurées dans des requêtes SQL et exécuter les requêtes en tant que tâches MapReduce.

PHP est un langage de programmation largement utilisé dans le développement Web. Dans les applications Web, la sécurité est cruciale, l'authentification et l'autorisation étant l'un des aspects importants de la protection des applications Web contre les accès non autorisés. Dans cet article, nous apprendrons comment PHP implémente l'authentification et l'autorisation des autorisations. L'authentification par autorisation consiste à vérifier si un utilisateur spécifique a le droit d'accéder aux ressources ou d'effectuer des opérations. Afin de mettre en œuvre cette fonction, un système utilisateur est d'abord nécessaire, comprenant l'authentification de l'utilisateur et confirmant si l'utilisateur a l'autorisation d'accéder à des ressources spécifiques. L'authentification permet

Bien que maintenir les logiciels à jour et télécharger uniquement des fichiers à partir de sources fiables soient des pratiques standard en matière de cybersécurité, compte tenu de la récente augmentation des attaques de logiciels malveillants, il est clair qu'une éducation plus poussée est nécessaire dans ce domaine. À cette fin, l'équipe médico-légale de Varonis a fourni des conseils sur la manière dont les attaquants utilisant le ransomware Hive ciblent Microsoft Exchange Server dans leur dernière série d'attaques. Pour ceux qui ne le savent pas, Hive suit un modèle de ransomware-as-a-service. Bien que Microsoft cible E en 2021 pour les vulnérabilités connues,

Lors de l'installation et de la configuration de Hive sur CentOS7, vous pouvez suivre ces étapes : Assurez-vous que Java est installé : Tout d'abord, assurez-vous que Java est installé sur CentOS7. Vous pouvez vérifier si Java est installé à l'aide de la commande suivante : java-version Si Java n'est pas installé, veuillez installer la version Java appropriée en fonction de vos besoins. Téléchargez Hive : Visitez le site officiel d'ApacheHive () et téléchargez la dernière version stable de Hive. Décompressez le package compressé Hive : utilisez la commande suivante pour décompresser le package compressé Hive : tarxvfzhive-x.x.x.tar.gz Cela décompressera Hive dans le répertoire actuel. Configurer les variables d'environnement : ouvrir le terminal,

Un responsable de Microsoft a confirmé de nombreuses informations selon lesquelles Google Chrome, ChromiumEdge, Discord et plusieurs autres applications étaient signalées comme « Behavior:Win32/Hive.ZY » par le logiciel antivirus intégré de Microsoft « WindowsDefender ». Le géant de la technologie a confirmé dans un communiqué qu'il travaillait sur un correctif qui sera déployé pour tout le monde dans les prochaines heures. Alors, qu’est-ce que « Behavior:Win32/Hive.ZY » exactement ? Selon un document publié sur le portail de sécurité de Microsoft, tout fichier marqué « Behavior:Win32/Hive.ZY » est

Comment intégrer un système d'authentification d'autorité tierce dans Laravel Introduction : Laravel est un puissant framework de développement PHP qui fournit de nombreuses fonctions et outils pratiques pour simplifier le processus de développement. Dans le développement réel, nous devons souvent intégrer des systèmes d'authentification des autorisations tiers pour gérer les autorisations des utilisateurs. Cet article expliquera comment intégrer un système d'authentification d'autorité tierce dans Laravel et fournira des exemples de code spécifiques. Étape 1 : Installer un système d'authentification d'autorité tierce. Tout d'abord, nous devons sélectionner et installer un système d'authentification d'autorité tierce approprié.
