Sentry

Sentryは、Hadoopクラスタでのロールベースの認証を提供します。特に、粒度の細かいレベルでHiveデータへのアクセスを制限するために使用できます。

外部ユーザーからデータを保護するためにSentryを使用することをお薦めします。Hadoopクラスタですでにそれを設定してある場合は、いくつかのことを実行して、BDDでそれを使用できるようにする必要があります。

注意: この手順の最初の2つのステップでは、Kerberosを有効にする必要もあります。それらをすでに実行してある場合は、スキップできます。

Sentryを有効にするには、次の手順を実行します。

  1. まだ作成していない場合は、HDFS内に次のディレクトリを作成します。
    • /user/<bdd user>、ここで、<bdd user>bddユーザーの名前です。
    • /user/<HDFS_DP_USER_DIR>(ここでの<HDFS_DP_USER_DIR>は、BDDの構成ファイルのHDFS_DP_USER_DIRの値です)。
    両方のディレクトリの所有者はbddユーザーであり、グループはsupergroupである必要があります。
  2. まだ行っていない場合は、bddユーザーをhiveグループに追加します。
  3. BDDのための新しいロールを作成します。
    create role <BDD_role>;
    grant all on server server1 to role <BDD_role>;
    show grant role <BDD_role>;
    grant role <BDD_role> to group hive;