Mengaktifkan otentikasi LDAP meningkatkan keamanan Kyuubi dengan mewajibkan klien menyediakan username dan password yang valid untuk terhubung ke Kyuubi Server, memulai sesi Spark, serta menjalankan kueri SQL. Langkah ini mencegah akses tidak sah terhadap data sensitif dan fitur-fitur tersebut.
Prasyarat
-
Buat Kyuubi Gateway dan token. Untuk informasi selengkapnya, lihat Gateway management.
Versi engine berikut direkomendasikan:
-
esr-4.x: esr-4.3.0 atau yang lebih baru.
-
esr-3.x: esr-3.3.0 atau yang lebih baru.
-
esr-2.x: esr-2.7.0 atau yang lebih baru.
-
-
(Opsional) Jika Anda ingin menggunakan layanan OpenLDAP dari kluster Alibaba Cloud EMR pada ECS, buat kluster yang mencakup layanan OpenLDAP dan tambahkan pengguna. Untuk informasi selengkapnya, lihat Create a cluster dan OpenLDAP user management.
Prosedur
Langkah 1: Siapkan jaringan
Sebelum memulai, pastikan konektivitas jaringan antara EMR Serverless Spark dan Virtual Private Cloud (VPC) Anda agar Kyuubi Gateway dapat terhubung ke layanan LDAP untuk otentikasi. Untuk petunjuknya, lihat Network connectivity between EMR Serverless Spark and other VPCs.
Langkah 2: Konfigurasikan Kyuubi Gateway
Untuk mengaktifkan otentikasi LDAP pada Kyuubi Gateway, hentikan gateway tersebut terlebih dahulu. Kemudian, edit Kyuubi Gateway, pilih nama koneksi dari daftar drop-down Normal Network Connection, lalu tambahkan parameter berikut di bagian Kyuubi Configuration. Setelah selesai mengedit, restart Kyuubi Gateway agar perubahan diterapkan.
kyuubi.authentication LDAP
kyuubi.authentication.ldap.baseDN <ldap_base_dn>
kyuubi.authentication.ldap.userDNPattern <ldap_user_pattern>
kyuubi.authentication.ldap.binddn <ldap_bind_dn>
kyuubi.authentication.ldap.bindpw <ldap_bind_pwd>
kyuubi.authentication.ldap.url ldap://<ldap_url>:<ldap_port>/
Tabel berikut menjelaskan parameter tersebut. Ganti nilai placeholder dengan informasi aktual Anda.
Jika Anda terhubung ke layanan OpenLDAP dari kluster Alibaba Cloud EMR pada ECS, Anda dapat merujuk pada contoh nilai berikut.
|
Parameter |
Deskripsi |
Contoh |
|
|
Atur ke |
|
|
|
Distinguished name (DN) dasar untuk pencarian dalam layanan LDAP. |
|
|
|
Pola yang digunakan untuk mengonversi username login menjadi DN LDAP lengkap. |
Sebagai contoh, ketika pengguna bernama |
|
|
DN yang digunakan untuk bind ke layanan LDAP. |
|
|
|
Password untuk bind DN tersebut. |
Temukan nilai parameter admin_pwd dalam konfigurasi layanan OpenLDAP. |
|
|
URL koneksi untuk layanan LDAP. Formatnya adalah |
Atur Catatan
Jika LDAP merupakan layanan ketersediaan tinggi, Anda harus memisahkan beberapa alamat koneksi LDAP dengan spasi. Contohnya: |
Langkah 3: Terhubung ke Kyuubi Gateway
Bagian ini menyediakan dua metode koneksi umum. Sebelum terhubung ke Kyuubi Gateway, ganti placeholder berikut dengan informasi aktual Anda:
-
<endpoint>: Informasi Endpoint (Public) atau Endpoint (Internal) dari tab Overview.Jika Anda menggunakan endpoint internal, akses ke Kyuubi Gateway dibatasi hanya untuk sumber daya dalam VPC yang sama.
-
<token>: Informasi token dari tab Tokens. -
<port>: Nomor port. Gunakan port 443 untuk akses melalui endpoint publik dan port 80 untuk akses melalui endpoint internal dalam wilayah yang sama. -
<username>dan<password>: Username dan password untuk login ke layanan LDAP. Jika Anda terhubung ke layanan OpenLDAP dari kluster Alibaba Cloud EMR pada ECS, gunakan username dan password yang telah Anda tambahkan di halaman Users di EMR pada ECS.
Metode 1: Gunakan kyuubi-beeline CLI
-
Tentukan username dan password secara langsung: Anda dapat memberikan kredensial langsung sebagai argumen baris perintah, tetapi metode ini mengekspos password.
kyuubi-beeline -u 'jdbc:hive2://<endpoint>:<port>/;transportMode=http;httpPath=cliservice/token/<token>' -n <username> -p <password> -
Masukkan password secara interaktif: Untuk keamanan yang lebih baik, hilangkan opsi
-p. Anda kemudian akan diminta memasukkan password secara manual, dan karakter input tidak akan ditampilkan.kyuubi-beeline -u 'jdbc:hive2://<endpoint>:<port>/;transportMode=http;httpPath=cliservice/token/<token>' -n <username> -p
Metode 2: Gunakan URL JDBC
Untuk terhubung dari aplikasi lain, seperti program Java, atau untuk menyusun URL JDBC lengkap, gunakan format berikut.
jdbc:hive2://<endpoint>:<port>/;transportMode=http;httpPath=cliservice/token/<token>;user=<username>;password=<password>