すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:AlbConfig を使用した ACL ベースのアクセス制御の設定

最終更新日:Aug 29, 2026

AlbConfig でアクセス制御リスト (ACL) を Application Load Balancer (ALB) Ingress のリスナーに関連付けることで、ソース IP のホワイトリストまたはブラックリストを設定します。

重要

ACL は IPv4 アドレスのみをサポートします。

仕組み

ACL には、CIDR ブロックのグループが含まれています。AlbConfig を介して ACL をリスナーに関連付けると、リスナーは受信リクエストのソース IP を ACL エントリと照合し、次のいずれかのルールを適用します。

  • ホワイトリスト:ACL エントリに一致する IP アドレスからのリクエストのみを許可します。

  • ブラックリスト:ACL エントリに一致する IP アドレスからのリクエストを拒否します。

次の図は、ACL の仕組みを示しています。

image

設定方法の選択

リスナーと ACL を関連付けるには 2 つの方法があります。ACL エントリを頻繁に管理したり、既存の ACL を再利用したりする場合は、aclIds を使用します。

項目 aclIds (推奨) aclEntries
サポートされるコントローラーバージョン ALB Ingress コントローラー v2.7.0 以降 すべてのバージョン
既存の ACL との関連付け はい — ACL ID を直接使用します いいえ — v2.7.0 以降では既存の ACL を関連付けることはできません
ACL の作成方法 ALB コンソールで手動で作成します AlbConfig 内でインラインで定義します
最適なケース ACL エントリの変更が頻繁な場合、コスト効率の高い ACL メンテナンス ACL エントリが少ない少数のリスナー
重要

aclIdsaclEntries は相互に排他的です。ALB Ingress コントローラー v2.7.0 以降では、aclIds のみを使用して既存の ACL をリスナーに関連付けます。

前提条件

始める前に:

  • 少なくとも 1 つのリスナーが設定された AlbConfig があること。

  • AlbConfig 内のリスナーレベルで aclConfig パラメーターが設定されていること。

aclIds パラメーターの使用 (推奨)

既存の ACL をその ID でリスナーに関連付けます。各リスナーは最大 3 つの ACL をサポートします。

ステップ 1: ACL の作成

  1. ALB コンソールにログインします。

  2. 上部のナビゲーションバーで、リージョンを選択します。

  3. 左側のナビゲーションウィンドウで、[ALB] > [アクセス制御] を選択します。

  4. [アクセス制御] ページで、[アクセス制御リストの作成] をクリックします。

  5. [ACL の作成] ダイアログボックスで、パラメーターを設定し、[OK] をクリックします。

    パラメーター 説明
    ACL 名 ACL の名前。
    タグキー / タグ値 [アクセス制御] ページで ACL をフィルターするためのタグ。
    リソースグループ リソースグループを選択します。

ステップ 2: ACL へのエントリの追加

ACL エントリは、受信リクエストと照合するソース IP アドレスまたは CIDR ブロックを指定します。

  1. [アクセス制御] ページで対象の ACL を見つけ、[操作] 列の [管理] をクリックします。

  2. ACL 詳細ページの [エントリ] タブで、エントリを追加します。

    • 単一エントリ[エントリの追加] をクリックし、[IP/CIDR ブロック][備考] を設定してから、[追加] をクリックします。

    • 複数エントリ[ACL エントリの追加] をクリックし、備考付きの CIDR ブロックを入力してから、[追加] をクリックします。

      • 1 行に 1 つのエントリを入力します。

      • 縦棒 (|) を使用して、IP/CIDR ブロックと備考を区切ります。例:192.168.1.0/24|Remarks

      • 一度に最大 20 個のエントリを追加できます。

  3. エントリを追加した後:

    • [エントリ] で CIDR ブロックを表示します。

    • [操作] 列からエントリを削除するか、複数のエントリを選択して [削除] をクリックします。

    • 右上の download アイコンでエントリをエクスポートします。特定のエントリをエクスポートするには、それらを選択して download アイコンをクリックします。

ステップ 3: ACL とリスナーの関連付け

AlbConfig に spec.listeners.aclConfig を追加し、aclIds に ACL ID を指定します。

apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
  name: default
spec:
  config:
  #...
  listeners:
    - port: #...
      protocol: #...
      aclConfig:
        aclType: White   # ホワイトリストモード
        aclIds:
          - acl-wtg***   # ご利用の ACL ID に置き換えてください
#...

aclConfig パラメーター:

パラメーター 説明
aclType ACL のタイプ。有効な値:Black (ブラックリスト)、White (ホワイトリスト)。
aclIds ACL ID。各リスナーは最大 3 つの ACL をサポートします。

ステップ 4: アクセス制御効果の検証

パブリック IP がホワイトリストのエントリに一致する (またはブラックリストのエントリに一致しない) クライアントからバックエンドサービスにアクセスします。

この例では、「ALB Ingress の概要」のリソースを使用します。

許可されている場合、クライアントはバックエンドサービスに到達します。

image

ステップ 5: (オプション) ACL とリスナーの関連付け解除

ACL の関連付けを解除するには、aclIds からその ID を削除するか、aclIdsnull に設定します。

apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
  name: default
spec:
  config:
   #...
  listeners:
    - port: #...
      protocol: #...
      aclConfig:
        aclEntries:
          - 192.168.XX.XX/16   # acl-test から 172.10.XX.XX/16 を削除
        aclType: White
        aclName: "acl-test"
  #...
ACL 自体を削除するには、 ALB コンソール を使用します。ACL は AlbConfig からは削除できません。

aclEntries パラメーターの使用

AlbConfig 内で ACL エントリをインラインで定義します。コントローラーは ACL を自動的に作成および管理します。

重要
  • ALB Ingress コントローラー v2.7.0 以降では、aclName は既存の ACL を関連付けなくなりました。aclName を更新するたびに、新しい ACL が作成され、関連付けられます。

  • ALB Ingress コントローラー v2.6.0 以前では、書き戻しがデフォルトで有効になっています。

  • AlbConfig の aclConfig が空の場合、関連付けられたリスナーの ACL エントリが AlbConfig に書き戻されます。

  • aclConfig が設定されているか、エントリがすでに書き戻されている場合、AlbConfig は変更されません。Ingress リソースが変更されると、コントローラーはコンソールの ACL 設定を AlbConfig の内容で上書きします。両方を同期させておく必要があります。

ステップ 1: AlbConfig での ACL エントリの設定

AlbConfig の spec.listeners.aclConfig を追加または更新します。aclEntries に CIDR ブロックを指定し、オプションで aclName に名前を指定します。

aclName が設定されている場合、ACL はその名前を使用します。aclName が設定されていない場合、名前は 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   # ホワイトリストモード
        aclName: "acl-test"   # acl-test という名前の ACL を作成します
  #...

aclConfig パラメーター:

パラメーター 説明
aclEntries ACL エントリ。127.0.0.1/32 のような CIDR ブロックである必要があります。
aclType ACL のタイプ。有効な値:Black (ブラックリスト)、White (ホワイトリスト)。
aclName ACL の名前。設定しない場合、acl-{albName}-{port} として自動生成されます。

ステップ 2: アクセス制御効果の検証

パブリック IP がホワイトリストのエントリに一致する (またはブラックリストのエントリに一致しない) クライアントからバックエンドサービスにアクセスします。

この例では、「ALB Ingress の概要」のリソースを使用します。

許可されている場合、クライアントはバックエンドサービスに到達します。

image

ステップ 3: (オプション) ACL エントリの削除

AlbConfig の aclEntries を更新します。コントローラーは変更を関連付けられた ACL に同期します。

この例では、acl-test から 172.10.XX.XX/16 を削除し、192.168.XX.XX/16 のみを保持します。すべてのエントリを削除するには、aclEntries を空のリストに設定します。

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 は acl-test から削除されます
        aclType: White
        aclName: "acl-test"
  #...
ACL 自体を削除するには、ALB コンソールを使用します。ACL は AlbConfig からは削除できません。

次のステップ