メインコンテンツまでスキップ

Kafkaユーザー

Kafkaユーザーは、アプリケーションやサービスがSASLメカニズムを使用してマネージドKafkaクラスターに認証することを可能にします。KafkaユーザーはDBaaSのクラスターレベルで管理され、通常はプロデューサー、コンシューマー、およびKafka Connectワークロードで使用されます。 Kafka User Management 機能はKafkaエンジンでのみ利用可能です。管理者はKafkaユーザーの表示、作成、更新を行うことができます。この機能は通常、以下の目的で使用されます:

  • Kafkaクラスターへのアプリケーションアクセスの制御。
  • マネージドクラウドプラットフォームで認証情報を安全に管理。
  • アクティビティログを通じたユーザー関連操作の監査。

1. 新しいKafkaユーザーの作成

新しいKafkaユーザーを作成するには、以下の手順に従います。

ステップ1: Kafka User Managementへのアクセス

FPT Cloud Consoleにサインインします。「Database Platform 」>「Data Streaming 」を選択し、KafkaクラスターIDをクリックして詳細ページを開きます。「Configure Params 」タブ>「Kafka ACL 」サブタブを選択します。Kafka user management ページが表示されます。

User List 」セクションには、選択したクラスターに設定されているすべてのKafkaユーザーが表示されます。表示されるフィールド:

  • Username : Kafkaプリンシパル名。
  • Password : 認証パスワード。セキュリティ上の理由で非表示になっています。
  • SASL mechanism : 認証メカニズム(例: PLAIN)。

ステップ2: 新しいKafkaユーザーの作成

Kafka user management ページの「User List 」で、Add user (プラスアイコン)を選択します。Create new user ダイアログが表示されます。

設定の詳細を入力します:

  • Username : ユーザー名は認証のためのKafkaプリンシパルとして使用されます。最大長は50文字です。以下の制限文字を含めることはできません: / \ : * ? " < > | [ ]
  • Password : 以下の要件を満たすパスワードを作成します:
    • 少なくとも1つの小文字を含む。
    • 少なくとも1つの大文字を含む。
    • 長さは12~20文字。
    • 次を除く特殊文字を少なくとも1つ含む: $ \ \ / [ ] ' " : ; + - ^ < > ( ) |`
    • 少なくとも1つの数字を含む。
    • スペースは使用不可。
  • SASL mechanism : サポートされている認証メカニズムを選択します。利用可能なオプション: 「 PLAIN 」、「 SCRAM-SHA256 」、「 SCRAM-SHA512 」。警告 : SASL/PLAIN を使用する Kafkaユーザー の作成または更新は、Kafkaクラスターの再起動をトリガーします。これによりプロデューサーとコンシューマーで一時的なサービス中断が発生する可能性があります。

設定完了後、「Create 」を選択してKafkaユーザーを作成します。新しく作成されたユーザーはUserリストに表示され、以下の用途で使用できます:

  • Kafkaクライアント設定。
  • Kafka Connect。
  • ACLポリシー(サポートされている場合)。

ベストプラクティス :

  • アプリケーションまたはサービスごとにKafkaユーザーを作成します。
  • パスワードを定期的にローテーションします。
  • ピークトラフィック時間中のユーザー作成は避けます。
  • 可能な場合、プロデューサーとコンシューマーで別々のユーザーを使用します。

必要に応じて、作成したKafkaユーザーに対して以下の操作を実行できます:

  • Update password : この操作により、Kafkaユーザーのパスワードを変更できます。Userリストで、変更したいユーザーの Update Password を選択します。新しいパスワードを入力し、Update を選択して変更を保存します。
  • Delete user : 使用されなくなったKafkaユーザーを削除でき、システムのクリーンさを維持できます。Userリストで、削除するユーザーの Delete を選択します。警告ダイアログでアクションを確認して削除を完了します。
  • Grant ACL : KafkaユーザーにACL権限を割り当てることができます。詳細な手順については、セクション 2. Grant ACL to Kafka users を参照してください。

2. KafkaユーザーへのACLの付与

Kafka Access Control List (ACL)管理により、管理者はマネージドDBaaS Kafkaクラスター内のトピックおよびコンシューマーグループにアクセスするためのきめ細かい権限をKafkaユーザーに付与できます。 ACLは以下を強制するのに役立ちます:

  • セキュアなアクセス制御
  • 最小権限の原則
  • アプリケーションとワークロード間の分離

ACLはクラスターレベルで適用され、保存後すぐに有効になります。 : KafkaユーザーにACL権限が割り当てられていない場合、ユーザーはリソースにアクセスできません。 Kafkaユーザーに権限を割り当てるには、以下の手順に従います: Kafka user management ページのUserリストで、ユーザーの「Grant ACL 」アクションを選択します。Grant ACL ダイアログが表示されます。

設定の詳細を入力します:

  • Username : 選択したKafkaユーザーを表示します。このフィールドは読み取り専用です。
  • Resource Type : 権限を付与するKafkaリソースを選択します:
    • Topic – Kafkaトピックへのアクセスを付与。
    • Consumer group – コンシューマーグループへのアクセスを付与。
  • Topic prefix / Group prefix : プレフィックスベースのパターンを指定します。プレフィックスに一致するすべてのリソースに権限を付与します。「All 」を使用してすべてのトピックまたはすべてのコンシューマーグループに権限を付与します。
  • Operations : リソースタイプに応じて、許可される1つ以上のKafka操作を選択します。

設定完了後、「Save 」を選択してACLをKafkaユーザーに適用します。ACLはKafkaクラスターの再起動を必要とせず、すぐに有効になります。Kafkaユーザーには複数のACLを割り当てることができます。

ベストプラクティス:

  • 可能な場合はプレフィックスベースのACLを使用して権限を付与します。プレフィックスベースのACLは、大規模な権限管理を簡素化します。
  • プロデューサーとコンシューマーでACLを分離します。
  • 必要でない限り、ワイルドカードアクセスの付与は避けます。
  • ACL割り当てを定期的に確認します。