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

ApsaraMQ for Kafka:アクセス制御リストの有効化

最終更新日:Jul 10, 2026

ApsaraMQ for Kafka の Professional Edition および Serverless Edition インスタンスでは、アクセス制御リスト (ACL) 機能を提供します。この機能を使用すると、SASL ユーザーに、SASL エンドポイント経由でインスタンスにアクセスする権限を付与できます。

説明

ACL 機能は、トピックおよびコンシューマーグループレベルで、きめ細かいユーザー権限制御を提供します。ACL を有効化すると、SASL ユーザーに、特定のトピックへのメッセージ送信または特定のトピックからのメッセージ受信の権限、または特定のコンシューマーグループを使用してメッセージを消費する権限を付与できます。以降、すべてのデータプレーン アクセスは SASL エンドポイントを経由します。

ACL とネットワーク層の許可リスト (セキュリティグループ) の違い

ACL とネットワーク層の許可リスト (セキュリティグループ) はどちらもセキュリティメカニズムですが、動作するレイヤーが異なります:

セキュリティメカニズム

レイヤー

制御粒度

ネットワーク層の許可リスト (セキュリティグループ)

ネットワーク

ネットワークレベルで、どの IP アドレスがインスタンスに接続できるかを制御します。ユーザーやリソースは区別しません。

ACL

データプレーン

どの SASL ユーザーが、特定のトピックまたはコンシューマーグループへの読み取り/書き込みアクセス権を持つかを制御し、きめ細かいデータ アクセス制御と機密データ保護を実現します。

(推奨) 多層防御のために、両方のメカニズムを併用してください。

ApsaraMQ for Kafka のセキュリティエコシステム

ApsaraMQ for Kafka は、包括的なセキュリティフレームワークを提供します:

コンポーネント

目的

RAM 権限管理

Alibaba Cloud アカウントおよび RAM ユーザーの、コンソールおよび API へのアクセスを制御します

ACL + SASL 認証

データプレーン で、リソースレベルのアクセス制御 (ACL) と ID 認証 (SASL) を提供します

SSL/TLS 転送中の暗号化

転送中のデータを暗号化して傍受を防止します

Cloud Monitor

モニタリングおよび監査機能を提供します

ACL は、きめ細かいデータアクセス制御を実装し、機密データを保護するための重要なコンポーネントです。たとえば、特定のトピックまたはコンシューマーグループに対して、どのユーザーがプロデュースまたはコンシュームできるかを制限できます。

前提条件

  • インスタンスが Professional Edition または Serverless Edition であること。

  • インスタンスのステータスが [サービス中] であること。

  • インスタンスのメジャーバージョンが 2.2.0 以降であること。アップグレード手順については、「Upgrade versions」をご参照ください。

  • インスタンスのマイナーバージョンが最新であること。アップグレード手順については、「Upgrade instance versions」をご参照ください。

手順

  1. ApsaraMQ for Kafka コンソール にログインします。

  2. リソースの分布 セクションの 概要 ページで、管理する ApsaraMQ for Kafka インスタンスが存在するリージョンを選択します。

  3. インスタンスリスト ページで、管理するインスタンスの名前をクリックします。

  4. インスタンスの詳細 ページで、概要 セクションの右上隅にある ACL の有効化 をクリックします。

  5. ACL を有効化するリスクについて ダイアログボックスで、OK をクリックし、ページを手動で更新します。

    ページを手動で更新すると、インスタンスの詳細 ページの 基本情報 セクションでインスタンスの ステータスアップグレード中 に変わります。ステータスサービス中 に戻ると、プロセスは完了です。

    説明
    • ACL 機能を有効化するには、約 30 分 (クラスターが大きいほど時間がかかります) のインスタンスアップグレードが必要です。アップグレードが完了したら、SASL ユーザーを作成し、SASL エンドポイント経由でインスタンスにアクセスする権限を付与できます。詳細については、「Create a SASL user」をご参照ください。

    • インスタンスの作成時に ACL 機能を有効化することもできます。

よくある質問

Q:コンシューマーの接続時に GroupAuthorizationException エラーが発生した場合の対処方法を教えてください。

このエラーは通常、コンシューマーグループに ACL の読み取り権限が付与されていないことが原因で発生します。

原因:インスタンスで ACL を有効化すると、コンシューマーグループから読み取るコンシューマー接続には、Group リソースに対する明示的な Read 権限が必要になります。この権限がない場合、ブローカーは接続を拒否し、GroupAuthorizationException を返します。

解決策

  1. インスタンスで ACL が有効になっていることを確認します。

  2. 「インスタンス詳細」ページで、SASL 権限管理 タブをクリックします。

  3. 権限の追加 をクリックします。

  4. 権限の追加 パネルで、次の設定を構成します:

    • リソースタイプ[グループ]に設定します。

    • 操作タイプ読み取り に設定します。

    • コンシューマーグループ名を指定するか、プレフィックスを入力して一致モードにプレフィックス一致を選択します。

    • コンシューマーアプリケーションが使用する SASL ユーザー名を選択します。

  5. ACL ルールを送信します。これで、コンシューマーは正常に接続できるようになります。

説明

Standard Edition インスタンスは ACL をサポートしていません。インスタンスが Standard Edition の場合は、代替のアクセス制御方法として、RAM ユーザーに AliyunKafkaFullAccess 権限を付与できます。