全部产品
Search
文档中心

Resource Orchestration Service:ALIYUN::ALB::Listener

更新时间:Jun 26, 2025

ALIYUN::ALB::Listener digunakan untuk membuat listener HTTP, HTTPS, atau Quick UDP Internet Connections (QUIC).

Sintaks

{
  "Type": "ALIYUN::ALB::Listener",
  "Properties": {
    "RequestTimeout": Integer,
    "ListenerPort": Integer,
    "Http2Enabled": Boolean,
    "DefaultActions": List,
    "Certificates": List,
    "IdleTimeout": Integer,
    "LoadBalancerId": String,
    "ListenerProtocol": String,
    "QuicConfig": Map,
    "GzipEnabled": Boolean,
    "SecurityPolicyId": String,
    "ListenerDescription": String,
    "XForwardedForConfig": Map,
    "CaEnabled": Boolean,
    "CaCertificates": List,
    "ListenerStatus": String,
    "LogConfig": Map
  }
}

Properti

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

DefaultActions

List

Ya

Ya

Aksi dari aturan pengalihan.

Nilai yang valid:

[
        {
          "ForwardGroupConfig": {
            "ServerGroupTuples": [
              {
                "ServerGroupId": "sgp-46ndzg2wz4v5mp****"
              }
            ]
          },
          "Type": "ForwardGroup"
        }
      ]

Untuk informasi lebih lanjut, lihat properti DefaultActions.

ListenerPort

Integer

Ya

Tidak

Port listener.

Nilai yang valid: 1 hingga 65535.

ListenerProtocol

String

Ya

Tidak

Protokol listener.

Nilai yang valid:

  • HTTP

  • HTTPS

  • QUIC

LoadBalancerId

String

Ya

Tidak

ID instance Application Load Balancer (ALB).

Tidak ada.

CaCertificates

List

Tidak

Ya

Sertifikat otoritas sertifikasi (CA).

Untuk informasi lebih lanjut, lihat properti CaCertificates.

CaEnabled

Boolean

Tidak

Ya

Menentukan apakah akan mengaktifkan otentikasi timbal balik.

Nilai yang valid:

  • true

  • false (default)

Certificates

List

Tidak

Ya

Sertifikat.

Untuk informasi lebih lanjut, lihat properti Certificates.

GzipEnabled

Boolean

Tidak

Ya

Menentukan apakah akan mengaktifkan kompresi GNU zip (Gzip) untuk menekan jenis file tertentu.

Nilai yang valid:

  • true (false)

  • false

Http2Enabled

Boolean

Tidak

Ya

Menentukan apakah akan mengaktifkan HTTP/2.

Nilai yang valid:

  • true (default)

  • false

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

IdleTimeout

Integer

Tidak

Ya

Periode timeout koneksi idle.

Nilai yang valid: 1 hingga 60.

Nilai default: 15.

Unit: detik.

Jika tidak ada permintaan yang diterima dalam periode timeout yang ditentukan, ALB menutup koneksi saat ini. Saat permintaan lain diterima, ALB membuka koneksi baru.

ListenerDescription

String

Tidak

Ya

Deskripsi listener.

Deskripsi harus memiliki panjang 2 hingga 256 karakter,

ListenerStatus

String

Tidak

Ya

Status listener.

Nilai yang valid:

  • Running

  • Stopped

QuicConfig

Map

Tidak

Ya

Konfigurasi listener QUIC yang ingin Anda asosiasikan dengan listener HTTPS dari instance ALB.

Untuk informasi lebih lanjut, lihat properti QuicConfig.

RequestTimeout

Integer

Tidak

Ya

Periode timeout permintaan.

Nilai yang valid: 1 hingga 180.

Nilai default: 60.

Unit: detik.

Jika tidak ada respons yang diterima dari server backend dalam periode timeout yang ditentukan, ALB berhenti menunggu respons dan mengembalikan kode status HTTP 504 ke klien.

SecurityPolicyId

String

Tidak

Ya

ID kebijakan keamanan.

Kebijakan keamanan sistem dan kustom didukung.

Nilai default: tls_cipher_policy_1_0. Nilai ini menentukan kebijakan keamanan sistem.

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForConfig

Map

Tidak

Ya

Konfigurasi header X-Forwarded-For.

Untuk informasi lebih lanjut, lihat properti XForwardedForConfig.

LogConfig

Map

Tidak

Ya

Konfigurasi log.

Untuk informasi lebih lanjut, lihat bagian "properti LogConfig" dari topik ini.

Sintaks DefaultActions

"DefaultActions": [
  {
    "Type": String,
    "ForwardGroupConfig": Map
  }
]

Properti DefaultActions

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

ForwardGroupConfig

Map

Ya

Ya

Konfigurasi aksi.

Untuk informasi lebih lanjut, lihat properti ForwardGroupConfig.

Type

String

Ya

Ya

Aksi.

Tetapkan nilai menjadi ForwardGroup. Nilai ini menentukan bahwa permintaan diteruskan ke beberapa grup server.

Sintaks ForwardGroupConfig

"ForwardGroupConfig": {
  "ServerGroupTuples": List
}

Properti ForwardGroupConfig

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

ServerGroupTuples

List

Ya

Ya

Grup server tempat permintaan diteruskan.

Untuk informasi lebih lanjut, lihat properti ServerGroupTuples.

Sintaks ServerGroupTuples

"ServerGroupTuples": [
  {
    "ServerGroupId": String
  }
]

Properti ServerGroupTuples

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

ServerGroupId

String

Ya

Ya

ID grup server tempat permintaan diteruskan.

Tidak ada.

Sintaks Certificates

"Certificates": [
  {
    "CertificateId": String
  }
]

Properti Certificates

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

CertificateId

String

Tidak

Ya

ID sertifikat.

Hanya sertifikat server yang didukung.

Sintaks QuicConfig

"QuicConfig": {
  "QuicListenerId": String,
  "QuicUpgradeEnabled": Boolean
}

Properti QuicConfig

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

QuicListenerId

String

Tidak

Ya

ID listener QUIC.

Properti ini diperlukan jika Anda mengatur QuicUpgradeEnabled ke true.

Catatan
  • Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

  • Anda harus menambahkan listener HTTPS dan listener QUIC ke instance ALB yang sama. Selain itu, pastikan bahwa listener QUIC tidak terkait dengan listener lainnya.

QuicUpgradeEnabled

Boolean

Tidak

Ya

Menentukan apakah akan mengaktifkan peningkatan QUIC.

Nilai yang valid:

  • true

  • false (default)

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

Sintaks LogConfig

"LogConfig": {
  "AccessLogTracingConfig": Map,
  "AccessLogRecordCustomizedHeadersEnabled": Boolean
}

Properti LogConfig

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

AccessLogTracingConfig

Map

Tidak

Ya

Konfigurasi pelacakan log akses.

Untuk informasi lebih lanjut, lihat bagian "properti AccessLogTracingConfig" dari topik ini.

AccessLogRecordCustomizedHeadersEnabled

Boolean

Tidak

Ya

Menentukan apakah akan mencatat header kustom dalam log akses.

Nilai yang valid:

  • true

  • false

Sintaks AccessLogTracingConfig

"AccessLogTracingConfig": {
  "TracingSample": Integer,
  "TracingType": String,
  "TracingEnabled": Boolean
}

Properti AccessLogTracingConfig

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

TracingSample

Integer

Tidak

Ya

Tingkat sampling pelacakan.

Nilai yang valid: 1 hingga 10000.

Catatan

Properti ini berlaku ketika TracingEnabled diatur ke true.

TracingType

String

Tidak

Ya

Jenis pelacakan.

Tetapkan nilai menjadi Zipkin.

Catatan

Properti ini berlaku ketika TracingEnabled diatur ke true.

TracingEnabled

Boolean

Tidak

Ya

Menentukan apakah akan mengaktifkan fitur pelacakan.

Nilai yang valid:

  • true

  • false

Catatan

Anda hanya dapat mengatur TracingEnabled ke true ketika AccessLogEnabled diatur ke true untuk mengaktifkan fitur log akses untuk instance ALB.

Sintaks XForwardedForConfig

"XForwardedForConfig": {
  "XForwardedForClientCertFingerprintAlias": String,
  "XForwardedForClientCertFingerprintEnabled": Boolean,
  "XForwardedForClientCertIssuerDNAlias": String,
  "XForwardedForClientCertClientVerifyAlias": String,
  "XForwardedForSLBIdEnabled": Boolean,
  "XForwardedForClientCertSubjectDNEnabled": Boolean,
  "XForwardedForClientCertSubjectDNAlias": String,
  "XForwardedForProtoEnabled": Boolean,
  "XForwardedForClientSrcPortEnabled": Boolean,
  "XForwardedForSLBPortEnabled": Boolean,
  "XForwardedForEnabled": Boolean,
  "XForwardedForClientCertIssuerDNEnabled": Boolean,
  "XForwardedForClientCertClientVerifyEnabled": Boolean,
  "XForwardedForClientSourceIpsEnabled": Boolean,
  "XForwardedForClientSourceIpsTrusted": String,
  "XForwardedForProcessingMode": String,
  "XForwardedForHostEnabled": Boolean
}

Properti XForwardedForConfig

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

XForwardedForClientCertClientVerifyAlias

String

Tidak

Ya

Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa hasil verifikasi sertifikat klien.

Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertClientVerifyEnabled ke true.

Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-).

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientCertClientVerifyEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-clientverify untuk memeriksa hasil verifikasi sertifikat klien.

Nilai yang valid:

  • true

  • false (default)

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientCertFingerprintAlias

String

Tidak

Ya

Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa sidik jari sertifikat klien.

Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertFingerprintEnabled ke true.

Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-).

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientCertFingerprintEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-fingerprint untuk memeriksa sidik jari sertifikat klien.

Nilai yang valid:

  • true

  • false (default)

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientCertIssuerDNAlias

String

Tidak

Ya

Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa informasi tentang CA yang menerbitkan sertifikat klien.

Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertIssuerDNEnabled ke true.

Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-).

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientCertIssuerDNEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-issuerdn untuk memeriksa informasi tentang CA yang menerbitkan sertifikat klien.

Nilai yang valid:

  • true

  • false (default)

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientCertSubjectDNAlias

String

Tidak

Ya

Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa informasi tentang pemilik sertifikat klien.

Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertSubjectDNEnabled ke true.

Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-).

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientCertSubjectDNEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-subjectdn untuk memeriksa informasi tentang pemilik sertifikat klien.

Nilai yang valid:

  • true

  • false (default)

Catatan

Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS.

XForwardedForClientSourceIpsEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Client-SourceIps untuk memeriksa port sumber klien.

Nilai yang valid:

  • true

  • false (default)

XForwardedForClientSourceIpsTrusted

String

Tidak

Ya

Alamat IP proksi tepercaya.

Instance ALB melintasi alamat IP dalam header X-Forwarded-For dari alamat IP paling kanan ke alamat IP paling kiri. Alamat IP pertama yang tidak ada dalam daftar alamat IP tepercaya dianggap sebagai alamat IP klien. Permintaan dari alamat IP klien dibatasi.

XForwardedForClientSrcPortEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Client-Port untuk memeriksa port klien.

Nilai yang valid:

  • true

  • false (default)

Catatan

Anda dapat mengonfigurasi properti ini untuk listener HTTP dan HTTPS.

XForwardedForEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-For untuk memeriksa alamat IP asli klien.

Nilai yang valid:

  • true (default)

  • false

Catatan

Anda dapat mengonfigurasi properti ini untuk listener HTTP dan HTTPS.

XForwardedForProtoEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Proto untuk memeriksa protokol listener instance ALB.

Nilai yang valid:

  • true

  • false (default)

XForwardedForSLBIdEnabled

Boolean

Tidak

Ya

apakah akan menggunakan header SLB-ID untuk memeriksa ID instance ALB.

Nilai yang valid:

  • true

  • false (default)

XForwardedForSLBPortEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Port untuk memeriksa port listener instance ALB.

Nilai yang valid:

  • true

  • false (default)

XForwardedForProcessingMode

String

Tidak

Ya

Metode untuk menangani header X-Forwarded-For.

Properti ini berlaku hanya ketika XForwardedForEnabled diatur ke true. Nilai yang valid:

  • append (default)

  • remove

Catatan
  • Jika Anda mengatur XForwardedForProcessingMode ke append, ALB menambahkan alamat IP hop terakhir ke header X-Forwarded-For yang ada dalam permintaan sebelum permintaan dikirim ke server backend.

  • Jika Anda mengatur XForwardedForProcessingMode ke remove, ALB akan menghapus header X-Forwarded-For dari permintaan sebelum dikirim ke server backend, terlepas dari apakah permintaan tersebut mencakup header X-Forwarded-For atau tidak.

  • Listener HTTP dan HTTPS mendukung properti ini.

XForwardedForHostEnabled

Boolean

Tidak

Ya

Menentukan apakah akan menggunakan header X-Forwarded-Host untuk memeriksa nama domain klien dari instance ALB.

Nilai yang valid:

  • true

  • false (default)

Catatan

Listener HTTP, HTTPS, dan QUIC mendukung properti ini.

Sintaks CaCertificates

"CaCertificates": [
  {
    "CertificateId": String
  }
]

Properti CaCertificates

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

CertificateId

String

Tidak

Ya

ID sertifikat CA.

Tidak ada.

Nilai Pengembalian

Fn::GetAtt

ListenerId: ID listener.

LoadBalancerId: ID instance ALB.

Contoh

YAML format

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  LoadBalancerId:
    Type: String
    Description: ID instance ALB.
    Default: lb-bp1iilcd9ujny84z8****
Resources:
  Listener:
    Type: ALIYUN::ALB::Listener
    Properties:
      ListenerPort: 80
      DefaultActions:
        - ForwardGroupConfig:
            ServerGroupTuples:
              - ServerGroupId: sgp-46ndzg2wz4v5mp****
          Type: ForwardGroup
      LoadBalancerId:
        Ref: LoadBalancerId
      ListenerProtocol: HTTP
Outputs:
  ListenerId:
    Description: ID listener.
    Value:
      Fn::GetAtt:
        - Listener
        - ListenerId                

JSON format

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "LoadBalancerId": {
      "Type": "String",
      "Description": "ID instance ALB.",
      "Default": "lb-bp1iilcd9ujny84z8****"
    }
  },
  "Resources": {
    "Listener": {
      "Type": "ALIYUN::ALB::Listener",
      "Properties": {
        "ListenerPort": 80,
        "DefaultActions": [
          {
            "ForwardGroupConfig": {
              "ServerGroupTuples": [
                {
                  "ServerGroupId": "sgp-46ndzg2wz4v5mp****"
                }
              ]
            },
            "Type": "ForwardGroup"
          }
        ],
        "LoadBalancerId": {
          "Ref": "LoadBalancerId"
        },
        "ListenerProtocol": "HTTP"
      }
    }
  },
  "Outputs": {
    "ListenerId": {
      "Description": "ID listener.",
      "Value": {
        "Fn::GetAtt": [
          "Listener",
          "ListenerId"
        ]
      }
    }
  }
}