翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
IAM アクセスコントロール用にクライアントを設定する
クライアントがIAMアクセスコントロールを使用する MSKクラスターと通信できるようにするには、次のいずれかのメカニズムを使用できます。
-
メカニズムを使用した SASL_OAUTHBEARER Java 以外のクライアント設定
-
メカニズムまたは AWS_MSK_IAM メカニズムを使用した SASL_OAUTHBEARER Java クライアント設定
メカニズムを使用して SASL_OAUTHBEARERを設定する IAM
以下の例の Python Kafka クライアントで強調表示されている構文をガイドとして使用し、client.properties 設定ファイルを編集します。設定の変更は他の言語でも同様です。
#!/usr/bin/python3from kafka import KafkaProducer from kafka.errors import KafkaError import socket import time from aws_msk_iam_sasl_signer import MSKAuthTokenProvider class MSKTokenProvider(): def token(self): token, _ = MSKAuthTokenProvider.generate_auth_token('<my aws region>') return token tp = MSKTokenProvider() producer = KafkaProducer( bootstrap_servers='<my bootstrap string>', security_protocol='SASL_SSL', sasl_mechanism='OAUTHBEARER', sasl_oauth_token_provider=tp, client_id=socket.gethostname(), ) topic = "<my-topic>" while True: try: inp=input(">") producer.send(topic, inp.encode()) producer.flush() print("Produced!") except Exception: print("Failed to send message:", e) producer.close()
選択した設定言語のヘルパーライブラリをダウンロードし、その言語ライブラリのホームページにある「はじめに」セクションの指示に従ってください。
JavaScript: https://github.com/aws/aws-msk-iam-sasl-signer-js#getting-started
Python: https://github.com/aws/aws-msk-iam-sasl-signer-python#get-started
Go: https://github.com/aws/aws-msk-iam-sasl-signer-go#getting-started
.NET: https://github.com/aws/aws-msk-iam-sasl-signer-net#getting-started
JAVA: SASL_OAUTHBEARER Java のサポートは
aws-msk-iam-auth
jar ファイルから利用できます
MSK カスタム AWS_MSK_IAM メカニズムを使用して を設定する IAM
以下を
client.properties
ファイルに追加します。をクライアント上の信頼ストアファイルへの完全修飾パス<PATH_TO_TRUST_STORE_FILE>
に置き換えます。注記
特定の証明書を使用しない場合は、
client.properties
ファイルからssl.truststore.location=
を削除できます。<PATH_TO_TRUST_STORE_FILE>
ssl.truststore.location
に値を指定しない場合、Java プロセスではデフォルトの証明書が使用されます。ssl.truststore.location=
<PATH_TO_TRUST_STORE_FILE>
security.protocol=SASL_SSL sasl.mechanism=AWS_MSK_IAM sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required; sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandlerAWS 認証情報用に作成した名前付きプロファイルを使用するには、クライアント設定ファイルに
awsProfileName="
を含めます。名前付きプロファイルの詳細については、 AWS CLI ドキュメントの「名前付きプロファイル」を参照してください。your profile name
";最新の安定aws-msk-iam-auth
JARファイルをダウンロードし、クラスパスに配置します。Maven を使用する場合は、次の依存関係を追加し、必要に応じてバージョン番号を調整します。 <dependency> <groupId>software.amazon.msk</groupId> <artifactId>aws-msk-iam-auth</artifactId> <version>1.0.0</version> </dependency>
Amazon MSKクライアントプラグインは、Apache 2.0 ライセンスの下でオープンソース化されています。