全部产品
Search
文档中心

Elasticsearch:Konfigurasikan otentikasi pengguna AD

更新时间:Jul 06, 2025

Alibaba Cloud Elasticsearch memungkinkan Anda mengonfigurasi otentikasi pengguna Active Directory (AD) untuk kluster Elasticsearch. Dengan cara ini, pengguna dalam realm AD yang ditetapkan peran Elasticsearch dapat digunakan untuk mengakses kluster. Topik ini menjelaskan cara mengonfigurasi otentikasi pengguna AD untuk kluster Alibaba Cloud Elasticsearch.

Prasyarat

  • Kluster Alibaba Cloud Elasticsearch telah dibuat. Dalam contoh ini, kluster Elasticsearch V7.10 dibuat.

    Untuk informasi lebih lanjut, lihat Buat kluster Alibaba Cloud Elasticsearch.

  • Realm AD dibuat dan dikonfigurasi pada instance Elastic Compute Service (ECS) yang menjalankan sistem operasi Windows dan berada di virtual private cloud (VPC) yang sama dengan kluster Elasticsearch. Dalam contoh ini, sistem operasi Windows Server 2012 digunakan. Selain itu, data telah dipersiapkan.

    Dalam contoh ini, pengguna ccy1 dan root realm ccy.com digunakan.

Batasan

Arsitektur jaringan Alibaba Cloud Elasticsearch di berbagai wilayah telah disesuaikan sejak Oktober 2020. Penyesuaian ini memiliki dampak berikut pada kluster:

  • Jika Anda ingin menghubungkan kluster yang diterapkan dalam arsitektur jaringan asli ke Internet, Anda dapat menggunakan instance ECS dengan SNAT diaktifkan atau menggunakan proxy NGINX untuk meneruskan permintaan.

  • Dalam arsitektur jaringan baru, fitur otentikasi pengguna AD terbatas. Anda dapat menggunakan layanan PrivateLink untuk membuat koneksi pribadi antara VPC. Untuk informasi lebih lanjut, lihat Konfigurasikan koneksi pribadi untuk kluster Elasticsearch. Jika Anda ingin menghubungkan kluster yang diterapkan dalam arsitektur jaringan baru ke Internet, konfigurasikan proxy NGINX untuk meneruskan permintaan.

  • Dalam arsitektur jaringan asli, hanya kluster Elasticsearch zona tunggal yang mendukung otentikasi pengguna AD.

Catatan

Untuk informasi lebih lanjut tentang arsitektur jaringan, lihat [Pemberitahuan] Penyesuaian arsitektur jaringan.

Prosedur

  1. Langkah 1: (Opsional) Dapatkan nama domain dari titik akhir

  2. Langkah 2: Konfigurasikan otentikasi pengguna AD

  3. Langkah 3: Peta pengguna ke peran

  4. Langkah 4: Verifikasi hasilnya

Langkah 1: (Opsional) Dapatkan nama domain dari titik akhir

Kluster Elasticsearch yang dibuat pada Oktober 2020 atau setelahnya diterapkan dalam arsitektur jaringan baru. Kluster Elasticsearch ini berada di VPC akun layanan Elasticsearch. Jika kluster Elasticsearch Anda diterapkan dalam arsitektur jaringan baru, Anda harus menggunakan layanan PrivateLink untuk membuat koneksi pribadi antara VPC dan VPC Anda. Kemudian, dapatkan nama domain dari titik akhir terkait untuk digunakan nanti. Untuk mendapatkan nama domain dari titik akhir, lakukan langkah-langkah berikut:

  1. Buat instance Classic Load Balancer (CLB) yang mendukung layanan PrivateLink dan berada di VPC yang sama dengan kluster Elasticsearch yang dibuat.

    Untuk informasi lebih lanjut, lihat Langkah 1: Buat dan konfigurasikan instance CLB.

  2. Konfigurasikan instance CLB.

    Selama konfigurasi, Anda harus menentukan server Lightweight Directory Access Protocol (LDAP) sebagai server backend dan port 389 sebagai port pendengar.

    Untuk informasi lebih lanjut, lihat Konfigurasikan koneksi pribadi untuk kluster Elasticsearch.

  3. Buat layanan titik akhir.

    Untuk informasi lebih lanjut, lihat Langkah 2: Buat layanan titik akhir.

  4. Konfigurasikan koneksi pribadi ke kluster Elasticsearch.
  5. Dapatkan nama domain dari titik akhir yang digunakan untuk mengakses layanan titik akhir.

    Untuk informasi lebih lanjut, lihat Konfigurasikan koneksi pribadi untuk kluster Elasticsearch.

    Catatan Catat nama domain yang diperoleh, yang akan digunakan dalam konfigurasi selanjutnya.

Langkah 2: Konfigurasikan otentikasi pengguna AD

Kluster Elasticsearch menggunakan fitur keamanannya untuk berkomunikasi dengan realm AD dan mengotentikasi pengguna. Fitur keamanan berkomunikasi dengan realm AD berdasarkan LDAP. Realm AD mirip dengan realm LDAP. Seperti direktori LDAP, realm AD menyimpan pengguna dan grup secara hirarkis. Realm AD mengotentikasi pengguna dengan mengirimkan permintaan bind LDAP. Setelah pengguna lolos otentikasi, realm AD mencari entri pengguna di realm AD. Setelah realm AD menemukan entri, realm AD mengambil keanggotaan grup pengguna dari atribut tokenGroups entri tersebut. Untuk informasi lebih lanjut, lihat Mengonfigurasi realm Active Directory.

  • Kluster Elasticsearch versi V6.X, V7.X, atau V8.X

    Tambahkan konfigurasi berikut ke file konfigurasi YML kluster Anda untuk mengonfigurasi otentikasi pengguna AD. Untuk informasi lebih lanjut, lihat Konfigurasikan file YML.

  • Kluster Elasticsearch versi lainnya

    Tambahkan konfigurasi berikut ke file konfigurasi YML kluster Anda. Jika file konfigurasi YML tidak dapat dimodifikasi dan kluster tidak dapat di-restart, Anda dapat submit a ticket kepada personel dukungan teknis untuk membantu Anda mengonfigurasi konfigurasi.

xpack.security.authc.realms.active_directory.my_ad.order: 2
xpack.security.authc.realms.active_directory.my_ad.domain_name: ccy.com
xpack.security.authc.realms.active_directory.my_ad.url: ldap://ep-bp1i321219*********-cn-hangzhou-h.epsrv-bp15571d5ps*********.cn-hangzhou.privatelink.aliyuncs.com:389
xpack.security.authc.realms.active_directory.my_ad.bind_dn: cc**@ccy.com
xpack.security.authc.realms.active_directory.my_ad.bind_password: your_password

Parameter

Deskripsi

order

Prioritas realm AD. Prioritas menentukan urutan realm AD diperiksa selama otentikasi pengguna.

Catatan

Untuk kluster Elasticsearch V8.X, nilai parameter ini harus unik di antara permintaan berbeda. Kami sarankan Anda menyetel parameter ini ke 2.

domain_name

Nama dari root realm.

url

URL dan nomor port yang digunakan untuk membuat koneksi jaringan pribadi antara realm AD dan instance ECS. Untuk informasi lebih lanjut, lihat Mengonfigurasi realm Active Directory.

Penting

Jika kluster Anda diterapkan dalam arsitektur jaringan baru, Anda harus menyetel parameter ini ke nilai dalam format ldap://<Nama domain dari titik akhir terkait>:<Nomor port>. Dalam contoh ini, ldap://ep-bp1i321219*********-cn-hangzhou-h.epsrv-bp15571d5ps*********.cn-hangzhou.privatelink.aliyuncs.com:389 digunakan.

bind_dn

Nomor distinguished (DN) dari pengguna yang digunakan untuk melakukan pencarian.

bind_password

Kata sandi yang digunakan untuk mengotentikasi pengguna.

Langkah 3: Peta pengguna ke peran

  1. Masuk ke konsol Kibana kluster Elasticsearch.

    Untuk informasi lebih lanjut, lihat Masuk ke konsol Kibana.

    Catatan

    Operasi pada kluster versi berbeda mungkin bervariasi. Operasi aktual di konsol yang berlaku.

  2. Pergi ke halaman utama konsol Kibana sesuai petunjuk dan klik Dev Tools.

  3. Di tab Console, jalankan perintah berikut untuk memetakan pengguna ccy1 di realm AD ke peran administrator:

    PUT /_security/role_mapping/basic_users
    {
      "roles": [ "superuser" ],
      "enabled": true,
      "rules": {
        "any": [
          {
            "field": {
              "groups": "cn=ali,dc=ccy,dc=com"
            }
          },
          {
            "field": {
              "dn": "cn=ccy1,cn=ali,dc=ccy,dc=com"
            }
          }
        ]
      }
    }

Langkah 4: Verifikasi hasilnya

  1. Gunakan pengguna ccy1 untuk masuk ke konsol Kibana kluster Elasticsearch.

  2. Pergi ke halaman utama konsol Kibana sesuai petunjuk dan klik Dev Tools.

  3. Pada tab Console, jalankan perintah berikut untuk memeriksa apakah pengguna ccy1 memiliki izin melakukan operasi terkait:

    GET _cat/indices

    Jika izin diberikan kepada pengguna ccy1, hasil yang ditunjukkan pada gambar berikut dikembalikan.AD域配置验证结果