全部产品
Search
文档中心

:Konfigurasikan ACL dengan menggunakan AlbConfig untuk mengaktifkan kontrol akses

更新时间:Jul 06, 2025

Saat menggunakan Application Load Balancer (ALB) Ingress untuk mengekspos Layanan, Anda dapat mengonfigurasi daftar kontrol akses (ACL) untuk mengizinkan atau menolak permintaan dari klien berdasarkan alamat IP tertentu. Topik ini menjelaskan cara menggunakan AlbConfig untuk membuat atau memodifikasi ACL dan mengaitkannya dengan listener.

Cara kerja ACL

Ingress ALB mengimplementasikan kontrol granular atas permintaan dari klien berdasarkan alamat IP tertentu dengan mengaitkan ACL pada listener dan mengonfigurasi daftar putih atau daftar hitam. ACL mencakup sekelompok blok CIDR. Setelah ACL dikaitkan dengan listener melalui AlbConfig, listener menggunakan entri dalam ACL untuk mencocokkan alamat IP sumber permintaan yang mengakses Layanan backend. Anda dapat menggunakan salah satu metode berikut untuk mengontrol permintaan:

  • Konfigurasikan daftar putih untuk hanya mengizinkan permintaan dari alamat IP sumber yang sesuai dengan entri dalam ACL untuk mengakses Layanan backend.

  • Konfigurasikan daftar hitam untuk menolak permintaan dari alamat IP sumber yang sesuai dengan entri dalam ACL dari mengakses Layanan backend.

Penting

ACL hanya mendukung kontrol akses menggunakan alamat IPv4.

Gambar berikut menunjukkan cara kerja ACL.

Metode konfigurasi

Tabel berikut menjelaskan metode yang dapat digunakan untuk mengaitkan listener dengan ACL. Kami merekomendasikan penggunaan parameter aclIds.

Item

Gunakan Parameter aclIds

Gunakan Parameter aclEntries

Versi Controller Ingress ALB

Controller Ingress ALB 2.7.0 dan versi lebih baru mendukung parameter ini.

Semua versi controller Ingress ALB mendukung parameter ini.

Asosiasi dengan ACL yang Sudah Ada

Anda dapat menggunakan ID ACL yang sudah ada untuk mengaitkan listener dengan ACL.

Controller Ingress ALB 2.7.0 dan versi lebih baru tidak mengizinkan Anda untuk mengaitkan listener dengan ACL yang sudah ada.

Metode untuk Membuat ACL

Anda harus secara manual membuat ACL di konsol Server Load Balancer (SLB) sebelum menggunakan ACL.

Anda dapat membuat ACL menggunakan AlbConfig.

Skenario Penggunaan

Metode ini cocok untuk skenario di mana Anda perlu sering mengubah entri dalam ACL dan ingin memelihara ACL dengan cara yang hemat biaya.

Metode ini cocok untuk skenario di mana Anda ingin mengaktifkan kontrol akses menggunakan sejumlah kecil listener dan ACL yang berisi sejumlah kecil entri.

Penting
  • Parameter aclIds dan aclEntries saling eksklusif dalam konfigurasi ACL. Anda hanya dapat menggunakan salah satu dari mereka untuk mengonfigurasi ACL untuk listener. Jika Anda menggunakan kedua parameter pada saat yang sama, kesalahan akan terjadi.

  • Dalam controller Ingress ALB 2.7.0 dan versi lebih baru, Anda hanya dapat menggunakan parameter aclIds untuk mengaitkan ACL yang sudah ada dengan listener.

Prasyarat

Sebuah AlbConfig telah dibuat, dan listener telah dikonfigurasi menggunakan AlbConfig. Parameter aclConfig telah dikaitkan dengan listener untuk digunakan.

Gunakan parameter aclIds untuk mengaitkan listener dengan ACL

Langkah 1: Buat ACL

Sebelum mengaktifkan kontrol akses, Anda harus membuat ACL.

  1. Masuk ke konsol ALB.

  2. Di bilah navigasi atas, pilih wilayah tempat Anda ingin membuat ACL.

  3. Di panel navigasi sisi kiri, pilih ALB > Access Control.

  4. Pada halaman Access Control, klik Create Access Control List.

  5. Dalam kotak dialog Create ACL, konfigurasikan parameter berikut dan klik OK.

    Parameter

    Deskripsi

    ACL Name

    Masukkan nama untuk ACL jaringan.

    Tags and Resource Group

    • Konfigurasikan parameter Tag Key dan Tag Value.

      Setelah Anda menentukan tag, Anda dapat memfilter ACL berdasarkan tag pada halaman Access Control.

    • Pilih grup sumber daya dari daftar drop-down Resource Group.

Langkah 2: Tambahkan entri ke ACL

Setelah membuat ACL, Anda dapat menambahkan entri ke ACL. Entri ACL menentukan alamat IP sumber atau blok CIDR dari mana permintaan dikirim ke instance ALB Anda. Anda dapat menambahkan beberapa entri ke setiap ACL.

  1. Pada halaman Access Control, temukan ACL yang ingin Anda kelola dan klik Manage di kolom Actions.

  2. Pada tab Entry halaman detail ACL, gunakan salah satu metode berikut untuk menambahkan entri:

    • Tambahkan satu alamat IP atau blok CIDR

      Klik Add Entry. Dalam kotak dialog Add ACL Entries, konfigurasikan parameter IP/CIDR Block dan Remarks. Lalu, klik Add.

    • Tambahkan beberapa alamat IP atau blok CIDR sekaligus

      Klik Add ACL Entries. Dalam kotak dialog Add ACL Entries, tambahkan beberapa alamat IP atau blok CIDR dan catatan. Lalu, klik Add.

      Catatan

      Saat menambahkan beberapa entri sekaligus, perhatikan item berikut:

      • Masukkan satu entri per baris. Tekan tombol ENTER untuk memulai baris baru.

      • Gunakan tanda vertikal (|) untuk memisahkan alamat IP atau blok CIDR dari catatan dalam entri. Misalnya, Anda dapat memasukkan 192.168.1.0/24|Catatan.

      • Anda dapat menambahkan maksimal 20 entri sekaligus.

  3. Setelah menambahkan entri, lakukan operasi berikut berdasarkan kebutuhan bisnis Anda:

    • Lihat alamat IP atau blok CIDR yang Anda tambahkan di kolom Entri.

    • Hapus entri. Untuk melakukannya, temukan entri yang ingin Anda hapus dan klik Delete di kolom Actions. Anda juga dapat memilih entri yang ingin Anda hapus dan klik Delete di bawah daftar.

    • Untuk mengekspor entri, klik ikon 下载 di sudut kanan atas daftar untuk mengekspor semua entri, atau pilih entri yang ingin Anda ekspor dan klik ikon 下载.

Langkah 3: Kaitkan ACL dengan listener

Kode YAML sampel berikut menambahkan parameter spec.listeners.aclConfig ke AlbConfig yang ada dan menentukan ID ACL yang dibuat sebagai nilai parameter aclIds. Dalam contoh ini, ID ACL yang dibuat adalah acl-wtg***.

apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
  name: default
spec:
  config:
  #...
  listeners:
    - port: #...
      protocol: #...
      aclConfig:
        aclType: White # Mode daftar putih.
        aclIds:  
          - acl-wtg***	# Tambahkan ID ACL yang sudah ada ke konfigurasi ACL. Dalam contoh ini, ID ACL yang sudah ada adalah acl-wtg***. 
	#...

Tabel berikut menjelaskan parameter dalam aclConfig.

Parameter

Deskripsi

aclType

Jenis ACL. Nilai valid: Black dan White.

aclIds

ID ACL yang akan dikaitkan dengan listener.

Penting

Setiap listener dapat dikaitkan dengan maksimal tiga ACL.

Langkah 4: Verifikasi efek kontrol akses

Anda dapat menggunakan klien yang alamat IP publiknya sesuai dengan entri dalam daftar putih atau tidak ada entri dalam daftar hitam untuk mengakses Layanan backend dan memverifikasi efek konfigurasi ACL.

Dalam contoh ini, sumber daya yang dibuat dalam topik Memulai dengan ALB Ingress digunakan.

Jika akses dari klien diizinkan, klien dapat mengakses Layanan backend sesuai harapan.

image

Langkah 5: (Opsional) Putuskan kaitan ACL dari listener

Dalam file YAML berikut, jika Anda ingin memutuskan kaitan ACL dari listener, Anda hanya perlu menghapus ID ACL dari nilai parameter aclIds atau mengubah nilai parameter aclIds menjadi null.

apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
  name: default
spec:
  config:
   #...
  listeners:
    - port: #...
      protocol: #...
      aclConfig:
        aclType: White
        aclIds: null  # Hapus ID ACL yang sudah ada dari nilai parameter ini. Dalam contoh ini, ID ACL yang sudah ada adalah acl-wtg***. 
  #...
Catatan

Anda tidak dapat menghapus ACL dari AlbConfig. Untuk menghapus ACL, masuk ke konsol SLB.

Gunakan parameter aclEntries untuk membuat ACL

Penting
  • Dalam controller Ingress ALB v2.7.0 dan versi lebih baru, Anda tidak dapat lagi menggunakan parameter aclName untuk mengaitkan ACL yang sudah ada dengan listener. Setiap kali Anda memperbarui parameter dalam aclName, ACL baru dibuat dan dikaitkan dengan listener.

  • Controller Ingress ALB v2.6.0 dan versi lebih lama menggunakan mekanisme write-back secara default. Bagian berikut menjelaskan cara kerja mekanisme write-back:

    • Jika parameter aclConfig dibiarkan kosong dalam AlbConfig, entri ACL yang dikaitkan dengan listener ditulis kembali ke AlbConfig.

    • Jika parameter aclConfig dikonfigurasi atau entri ACL yang dikaitkan dengan listener ditulis kembali ke AlbConfig, AlbConfig tetap tidak berubah.

    Jika sumber daya Ingress diubah, controller Ingress ALB menggunakan AlbConfig yang dikonfigurasi untuk menimpa konfigurasi ACL di konsol. Dalam hal ini, Anda perlu memelihara konsistensi konfigurasi.

Langkah 1: Konfigurasikan entri dalam ACL

Kode YAML sampel berikut menambahkan atau memodifikasi parameter spec.listeners.aclConfig dalam AlbConfig yang ada dan menentukan blok CIDR dalam parameter aclEntries. Jika nilai ditentukan dalam parameter aclName, ACL dibuat dan menggunakan nilai tersebut sebagai namanya. Jika tidak ada nilai yang ditentukan dalam parameter aclName, nama akan secara otomatis dibuat dalam format acl-{albName}-{port}.

apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
  name: default
spec:
  config:
   #...
  listeners:
    - port: #...
      protocol: #...
      aclConfig:
        aclEntries: 
          - 192.168.XX.XX/16
          - 172.10.XX.XX/16
        aclType: White # Mode daftar putih.
        aclName: "acl-test" # ACL bernama acl-test dibuat dan dikaitkan dengan listener.
  #...

Tabel berikut menjelaskan parameter dalam aclConfig.

Parameter

Deskripsi

aclEntries

Entri ACL. Entri harus berupa blok CIDR, seperti 127.0.0.1/32.

aclType

Jenis ACL. Nilai valid: Black dan White.

aclName

Nama ACL.

Langkah 2: Verifikasi efek kontrol akses

Anda dapat menggunakan klien yang alamat IP publiknya sesuai dengan entri dalam daftar putih atau tidak ada entri dalam daftar hitam untuk mengakses Layanan backend dan memverifikasi efek konfigurasi ACL.

Dalam contoh ini, sumber daya yang dibuat dalam topik Memulai dengan ALB Ingress digunakan.

Jika akses dari klien diizinkan, klien dapat mengakses Layanan backend sesuai harapan.

image

Langkah 3: (Opsional) Hapus ACL

Kode YAML sampel berikut menunjukkan cara menghapus ACL dengan memperbarui AlbConfig. Kode sampel menghapus ACL tipe daftar putih yang berisi blok CIDR 172.10.XX.XX/16. Parameter aclEntries yang diperbarui dalam AlbConfig disinkronkan ke ACL yang terkait. Dalam contoh ini, ACL bernama acl-test. Jika parameter aclEntries dibiarkan kosong, semua entri dihapus dari ACL.

apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
  name: default
spec:
  config:
   #...
  listeners:
    - port: #...
      protocol: #...
      aclConfig:
        aclEntries: 
          - 192.168.XX.XX/16
        aclType: White
        aclName: "acl-test" # Entri 172.10.XX.XX/16 dalam ACL acl-test juga dihapus.
  #...
Catatan

Anda tidak dapat menghapus ACL dari AlbConfig. Untuk menghapus ACL, masuk ke konsol SLB.

Referensi