問題タブ [apache-sentry]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hadoop - Sentry で外部テーブルの作成を許可する
私は kerberos が有効になっている 4 ノードの cloudera クラスターを持っており、セントリー セキュア Hive サービスを使用しています。
ハイブユーザーを使用してテーブルを作成すると、データベースのデフォルトに対するすべての権限があるため、作成できます。
しかし、同じユーザーハイブで同じ環境に外部テーブルを作成しようとすると、以下のようなエラーが発生します
外部テーブルのデータを読み取っていたときから、URI へのすべてのアクセスも提供しました。
セントリーでユーザーに外部テーブルの作成を提供する方法はありますか?
apache-spark - Spark + Sentry + Kerberos: org.apache.hadoop.security.UserGroupInformation.doAs()
次のエラー スタックを取得します。
クラスタで Spark セッションを作成できませんでした: org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:160) で org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671) ) org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205) で org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120) で org.apache.spark.deploy で。 SparkSubmit.main(SparkSubmit.scala) ) org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:466) at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.(HiveMetaStoreClient.java:234) at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.(SessionHiveMetaStoreClient.java:74) ... 35 詳細
UserGroupInformation.doAs() を機能させるには、hive.server2.enable.impersonation と hive.server2.enable.doAs を有効にする必要があることを理解していますか?
これらのパラメータを有効にしようとすると、Cloudera Manager にエラーが表示されます
Hive Server2 ロール 'HiveServer2 (ホスト名)' に対して Hive 偽装が有効になっています。Sentry を使用して Hive 承認を有効にするには、Hive 偽装を無効にする必要があります。
Spark-Hive が Sentry と衝突!?
環境: Hue 3.9 Spark Notebooks + Livy Server (マスターからビルド)。CDH 5.5。
これは、Sentry を使用した kerberized クラスターです。
Hueのユーザーは通常(CDHのデフォルトで)他のユーザーになりすますことが許可されているため、hueのキータブを使用していました。Spark ノートブックにとって非常に便利です。
これを解決するのに役立つ情報は高く評価されます。
apache - LDAP を使用する Cloudera Sentry - Sentry 管理者としてユーザーを追加できない
バックグラウンド:
デフォルトでは、Sentry サービスには usershive
がhue
ありimpala
、sentry 管理者として存在します。これは、Cloudera Manager (CM) のプロパティに関するものsentry.service.admin.group
です。Sentry 管理者になれるように、自分のユーザー アカウントを持つユーザーまたはグループを追加したいと考えています。
現在の環境:
- CM を使用した Cloudera 5.4.7
- CDH、Hive、および Sentry 用の Postgre データベース
- セントリー バージョン 1.4
質問:
OpenLDAP を統合して、LDAP ユーザーとパスワードの資格情報を介して Beeline 認証を実行できるようにしました。LDAP を HiveServer2 に統合する前は、root を Sentry 管理者として使用していたので (Beeline は LDAP なしではパスワードを厳密にチェックしません)、show roles;
やcreate roles;
asなどのコマンドを実行できましroot
た。
LDAP が統合されroot
ているため、LDAP サーバーにエントリがなく、追加するオプションがないため、としてログインできませんjohndoe
。root
やりました。
これはPostgresレベルで設定する必要がありますか? つまり、Sentry データベースに入って、GRANT
そこに特権を与えるということですか?
これまでに何を試しましたか:
sentry.service.admin.group
プロパティでローカル ユーザーを使用する、ローカル ユーザーをグループに追加する、hive
LDAP ユーザーを使用する、LDAP グループを使用する、すべての組み合わせを試しましたが、何もありません。どこが間違っているのかわかりません。それとも、Sentry が と を管理者として識別するだけな
hive
のhue
でしょimpala
うか。
どんな助けでも大歓迎です。これで10日間立ち往生しました。
linux - LinuxでHDFSとしてiniファイルを作成する方法
私はLinuxが初めてです。Clouderaのドキュメントには、cloudera CHD 5.4 で HDFS ファイルとして sentry-provider.ini ファイルを作成することが記載されています。Linuxでiniファイルを作成する方法に関する良い記事が見つかりません。
Cloudera セットアップで Apache Sentry を構成して、ハイブ メタデータにロール ベースのセキュリティを持たせようとしています。
LinuxでHDFSとしてiniファイルを作成する方法は?
hadoop - Apache Sentry: SemanticException 有効な権限がありません このクエリに必要な権限
セキュリティで保護されていないクラスター (CDH 5.4) があり、より多くのユーザーにデータへのアクセスを提供したいので、これまでのところ Kerberos なしで Sentry を有効にしたいと考えています (これは、Sentry の起動が成功した後に行われます)。現時点で Impala が必要な人もいるかもしれないので、最初の段階で Hive にセットアップすることにしました。
私が行った手順: 1) hive と tuser の 2 人のユーザーを設定しました。
tuser - グループ テスト ハイブ - グループ ハイブ、飼育係
グループテスト
グループハイブ
グループハイブにはロール管理者 (ロックが解除された最初のもの) があります。
グループテストにはnecoの役割があります
さらに、ユーザー ハイブは、sentry.service.admin.group と sentry.service.allow.connect の両方のセットにあります。
2)セントリーをオンにしました-Hiveでセントリーサービスを「なし」から「セントリー」にチェックしました-ハイブサービスでsentry-site.xmlの高度な構成スニペット(安全バルブ)を挿入し、<property> <name>sentry.hive.testing.mode</name><value>true</value></property>
セントリーを再起動しました
結果: ユーザー hive は、Hive 内のあらゆるものにアクセスできます。それが私が期待していたものです。
ユーザー tuser は、Hive の何にもアクセスできません:Error while compiling statement: FAILED: SemanticException No valid privileges Required privileges for this query: Server=server1->Db=*->Table=+->action=insert;Server=server1->Db=*->Table=+->action=select;
私は何が欠けていますか?
hive - Sentry を有効にして kerberos を設定しないと、Hive Admin が機能しない
Hive Permission に関連する問題を解決するためにあなたの助けが必要です。CDH 5.5 環境で Sentry を有効にしましたが、Kerberos が送信されません。ロールを作成することも、ハイブ オブジェクトへのアクセス許可を付与することもできませんでした。すべてのアクセスに対して、root および sudo を介してログインし、ハイブしてオブジェクトにアクセスする必要があります。
su を hdfs ユーザーからハイブして、以下のコマンドを実行しようとすると
ロール管理者を設定します。
FAILED: SemanticException 現在の Hive の組み込み認証は不完全であり、無効になっています。
これを解決する方法を教えてください。
ありがとうございます。それでは、お元気で
apache-spark - sentry を使用した spark sql の特権
私はセントリーでSpark-SQLにアクセスする権限を作ろうとしています.spark sqlはhiveserver2(--hiveconf hive.server2.thrift.port)でthriftポートに接続します。ただし、Hive でのユーザーの特権を正常に制限することはできますが、セントリーを介して spark SQL でアクセスを制限することはできません。
同じ問題に遭遇した人はいますか?
apache-sentry - ポリシー管理用の Apache Sentry API
Role のポリシーを実用的に定義する方法を探しています。Sentry で使用できる API はありますか? REST/JAVA のどちらか?
ドキュメントやリンクは非常に役立ちますか?
apache-hive - セントリーを使用してハイブを構成する: NullPointerException 特権オブジェクトが null の場合
ガイドを順を追って説明しました。しかし、ロールに権限を付与しようとしたときにエラーが発生しました:
beeline に hive としてログインしています。パスワードは正しく、ロールの作成は問題ありません。ロールを確認できます:</p>
しかし、現在の役割を取得できません: