サービスで LDAP 認証を有効にすると、そのサービスにアクセスする際に LDAP のユーザー名とパスワードの入力が必須となり、サービスのセキュリティが向上します。EMR コンソールで簡単な操作を行うだけで、サービスの LDAP 認証を有効にできます。これにより、LDAP 認証の複雑な設定作業が不要になります。
前提条件
Hive および OpenLDAP コンポーネントを選択して、DataLake クラスターまたはカスタムクラスターを作成済みであること。詳細については、「クラスターの作成」をご参照ください。
ワンクリックでの LDAP 認証の有効化
EMR ユーザーを追加します。詳細については、「ユーザーの追加」をご参照ください。
[サービス] タブに移動します。
EMR コンソールにログインします。
左側のナビゲーションウィンドウで、[EMR on ECS] をクリックします。
上部のナビゲーションバーで、クラスターが所在するリージョンを選択し、ビジネス要件に応じてリソースグループを選択します。
[EMR on ECS] ページで、対象のクラスターを見つけ、[操作] 列の [サービス] をクリックします。
-
LDAP 認証を有効にします。
-
Services ページで、Hive サービスのセクションにある Status をクリックします。
-
enableLDAP スイッチをオンにします。
-
EMR 5.11.1 以降および EMR 3.45.1 以降の場合
-
サービスの概要 セクションで、[enableLDAP] スイッチをオンにします。
-
表示されたダイアログボックスで、決定 をクリックします。
-
-
EMR 5.11.0 以前および EMR 3.45.0 以前の場合
-
Components セクションで [HiveServer] を見つけ、[操作] 列で を選択します。
-
表示されたダイアログボックスで、Execution Reason を入力し、決定 をクリックします。
-
Confirm ダイアログボックスで、決定 をクリックします。
-
-
-
HiveServer を再起動します。
-
Components セクションで [HiveServer] を見つけ、[操作] 列の 再起動 をクリックします。
-
表示されたダイアログボックスで、Execution Reason を入力し、OK をクリックします。
-
Confirm ダイアログボックスで、OK をクリックします。
-
-
-
HiveServer に接続します。
LDAP 認証を有効にした後、LDAP 認証情報を使用して HiveServer2 に接続する必要があります。
-
SSH 経由でクラスターにログインします。詳細については、「クラスターへのログイン」をご参照ください。
-
次のコマンドを実行して HiveServer2 に接続します。
-
Beeline クライアント:
beeline -u jdbc:hive2://master-1-1:10000 -n <user> -p <password> -
JDBC:
jdbc:hive2://master-1-1:10000/default;user=<user>;password=<password>
説明<user> と <password> は、ステップ 1 で追加したユーザーのユーザー名とパスワードです。
-
-
LDAP 認証の手動設定
EMR コンソールには、ワンクリックで LDAP 認証を有効にできる enableLDAP ボタンが用意されています。古いバージョンの EMR を使用している場合や、自己管理型 LDAP サービスに接続する場合は、HiveServer2 の LDAP 認証を手動で設定する必要があります。
EMR コンソールの Hive サービスの Configure ページで、[hiveserver2-site.xml] タブに移動し、次の設定項目を追加します。設定項目の追加方法の詳細については、「設定項目の管理」をご参照ください。
|
パラメーター |
値 |
説明 |
|
hive.server2.authentication |
LDAP |
HiveServer2 の認証方式を指定します。 |
|
hive.server2.authentication.ldap.url |
ldap://{ldap_hostname}:{port} 例: ldap://master-1-1:10389 |
LDAP サービスの接続 URL です。この値はご利用の環境によって異なります。
|
|
hive.server2.authentication.ldap.baseDN |
ou=people,o=emr |
ユーザーのベース識別名 (DN) です。EMR LDAP サービスの場合、値は |
特定のユーザーまたはグループへのアクセスの制限
Hive サービスの LDAP 認証を有効にした後、次の設定を追加または変更して、特定のユーザーにアクセスを制限できます。
設定
-
EMR コンソールの Hive サービスの Configure ページで、[hiveserver2-site.xml] タブに移動し、次の設定項目を追加または変更します。
パラメーター
値の例
操作
説明
hive.server2.authentication.ldap.userDNPatternuid=%s,ou=people,o=emr追加
LDAP 内のユーザーの検索パスを定義するユーザー DN パターンです。%s は実際のユーザー名に置き換えられます。
hive.server2.authentication.ldap.groupFilterusername追加
グループのコンマ区切りのリストです。これらのグループに属するユーザーのみが HiveServer2 にアクセスできます。
hive.server2.authentication.ldap.groupClassKeyposixGroup追加
LDAP でグループオブジェクトを示す objectClass 属性の値です。
hive.server2.authentication.ldap.groupMembershipKeymemberUid追加
LDAP グループオブジェクトでメンバー情報を格納するために使用される属性名です。
hive.server2.authentication.ldap.baseDNo=emr変更
LDAP 検索のベース DN です。既存の値をグループフィルタリングに有効なベースパスに変更します。
-
新規および変更済みの設定を保存します。
-
HiveServer2 サービスを再起動して、新しい設定を適用します。
接続の検証
LDAP 認証を有効にし、ユーザーを設定した後、ユーザーの認証情報を提供して HiveServer2 に接続する必要があります。
-
SSH 経由でクラスターにログインします。詳細については、「クラスターへのログイン」をご参照ください。
-
次のコマンドを実行して HiveServer2 に接続します。
-
Beeline クライアント:
beeline -u jdbc:hive2://master-1-1:10000 -n <user> -p <password> -
JDBC:
jdbc:hive2://master-1-1:10000/default;user=<user>;password=<password>
説明<user> は
hive.server2.authentication.ldap.groupFilter設定項目で設定されたユーザーであり、<password> はそのユーザーのパスワードです。これらは、ステップ 1 で追加したユーザー名とパスワードです。 -
> [enableLDAP]