创建支持客户端身份验证的 Amazon MSK 集群 - Amazon Managed Streaming for Apache Kafka
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建支持客户端身份验证的 Amazon MSK 集群

此程序说明了如何使用启用客户端身份验证 Amazon 私有 CA。

注意

在使用双向 TLS 控制访问时,强烈建议 Amazon 私有 CA 对每个 MSK 集群使用独立。这样做可以确保由签署的 TLS 证书 PCAs 仅在单个 MSK 集群中进行身份验证。

  1. 使用以下内容创建名为 clientauthinfo.json 的文件。Private-CA-ARN替换为您的 PCA 的 ARN。

    { "Tls": { "CertificateAuthorityArnList": ["Private-CA-ARN"] } }
  2. 创建一个名为 brokernodegroupinfo.json 的文件,如使用创建预置 Amazon MSK 集群 Amazon CLI中所述。

  3. 客户端身份验证还要求您启用客户端和代理之间的传输中加密。使用以下内容创建名为 encryptioninfo.json 的文件。将KMS-Key-ARN替换为 KMS 密钥的 ARN。可以将 ClientBroker 设置为 TLSTLS_PLAINTEXT

    { "EncryptionAtRest": { "DataVolumeKMSKeyId": "KMS-Key-ARN" }, "EncryptionInTransit": { "InCluster": true, "ClientBroker": "TLS" } }

    有关加密的更多信息,请参阅Amazon MSK 加密

  4. 在 Amazon CLI 安装了身份验证和传输中加密的计算机上,运行以下命令来创建集群。保存响应中提供的集群 ARN。

    aws kafka create-cluster --cluster-name "AuthenticationTest" --broker-node-group-info file://brokernodegroupinfo.json --encryption-info file://encryptioninfo.json --client-authentication file://clientauthinfo.json --kafka-version "{YOUR KAFKA VERSION}" --number-of-broker-nodes 3