2015-07-30 2 views
1

J'essaie de créer une table dans l'espace de noms Hbase en utilisant la commande ci-dessous, mais en obtenant un problème d'autorisation.Impossible de créer une table dans Hbase

hbase(main):010:0> create 'hbasetest:my_table', 'fam' 

ERROR: org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient permissions for user 'qjdht' (global, action=CREATE) 

J'ai donné des permissions à l'utilisateur 'qjdht'.

hbase(main):003:0> grant '@hbasetest', 'RWXCA', '@hbasetest' 

0 row(s) in 0.8160 seconds 

L'utilisateur qjdht est membre du groupe hbasetest, mais je reçois le même problème d'autorisation.

+0

essayez et vérifiez - user_permission 'nom_table' –

+0

Je n'arrive pas à créer de table ... Comment vérifier user_permission 'nom_table'? –

Répondre

0

Dans shell, vous pouvez exécuter la commande user_permission 'nom_table'. Mais puisque vous n'êtes pas capable de le créer en premier lieu, vous ne pouvez pas l'utiliser.

Essayez ceci créer 'my_table', 'fam'. Le nom d'utilisateur serait pris de toute façon je suppose. Une fois que vous avez accordé l'autorisation et créé la table, Hbase doit prendre en charge la permission et vous permettre d'effectuer les opérations.

Si un problème persiste, le super utilisateur doit accorder l'autorisation. Donc peut-être quand vous accordez la permission, il ne le prend pas. Vous pouvez demander à votre administrateur d'accorder l'accès

Espérons que l'une des étapes fonctionnerait. Veuillez publier les résultats

+0

L'administrateur m'a accordé des permissions mais ne fonctionne pas au niveau de l'espace de noms ... aussi dans Erreur ci-dessus montre la portée globale alors que je crée la table dans l'espace de noms ..si vous pouvez suggérer quelque chose là-dessus? –

+0

alors obtenez-vous toujours la même erreur qu'en question? Une référence d'erreur similaire est [ici] (https://support.pivotal.io/hc/en-us/articles/201998166-HBase-SQL-statement-fails-with-Insufficient-permissions-for-user). Voir de l'une des choses est correspondant en fonction de votre cas d'utilisation. La [documentation] (https://hbase.apache.org/book.html#hbase.accesscontrol.configuration) a encore plus d'informations en général. Lors de l'octroi de l'autorisation, dans votre question, je vois que vous accordez le nom de groupe hbasetest et l'espace de noms hbasetest, car la dernière chose dans grant est namespace. J'espère que vous pourriez jeter un oeil là-bas – Ramzy

+0

admin m'a accordé 'nom d'utilisateur', 'RWXCA' cela a fonctionné pourquoi l'octroi de niveau d'espace de noms ne fonctionne pas? –