Amazon MSK クラスターの SASL/SCRAM 認証を設定する
AWS Secrets Manager でシークレットを設定するには、「AWS Secrets Manager ユーザーガイド」のシークレットの作成と取得のチュートリアルに従ってください。
Amazon MSK クラスターのシークレットを作成するときは、次の要件に注意してください。
シークレットタイプには、他のタイプのシークレット (API キーなど) を選択します。
シークレット名は、プレフィックス AmazonMSK_ から始まる必要があります。
既存のカスタム AWS KMS キーを使用するか、シークレット用に新しいカスタム AWS KMS キーを作成する必要があります。Secrets Manager は、デフォルトでシークレットにデフォルトの AWS KMS キーを使用します。
重要
デフォルトの AWS KMS キーで作成されたシークレットは、Amazon MSK クラスターでは使用できません。
[プレーンテキスト] オプションを使用してキーと値のペアを入力するには、サインイン認証情報データは次の形式である必要があります。
{ "username": "alice", "password": "alice-secret" }シークレットの ARN (Amazon リソース名) 値をレコードします。
-
重要
「 クラスターの適切なサイズ設定: 標準ブローカーあたりのパーティション数」で説明されている制限を超えるクラスターに Secrets Manager シークレットを関連付けることはできません。
AWS CLI を使用してシークレットを作成する場合は、
kms-key-idパラメータにキー ID または ARN を指定します。エイリアスは指定しないでください。-
シークレットをクラスターに関連付けるには、Amazon MSK コンソールまたは BatchAssociateScramSecret オペレーションのいずれかを使用します。
重要
シークレットをクラスターに関連付けると、Amazon MSK はそのシークレットにリソースポリシーをアタッチします。これにより、定義したシークレット値にクラスターがアクセスして読み取ることができるようになります。このリソースポリシーは変更しないでください。変更すると、クラスターがシークレットにアクセスできなくなる可能性があります。シークレットリソースポリシーおよび/またはシークレット暗号化に使用される KMS キーに変更を加えた場合は、必ずシークレットを MSK クラスターに再関連付けしてください。これにより、クラスターがシークレットに引き続きアクセスできるようになります。
次の
BatchAssociateScramSecretオペレーションの JSON 入力の例は、シークレットをクラスターに関連付けます。{ "clusterArn" : "arn:aws:kafka:us-west-2:0123456789019:cluster/SalesCluster/abcd1234-abcd-cafe-abab-9876543210ab-4", "secretArnList": [ "arn:aws:secretsmanager:us-west-2:0123456789019:secret:AmazonMSK_MyClusterSecret" ] }