インターフェイス VPC エンドポイントで Amazon MSK API を使用する - Amazon Managed Streaming for Apache Kafka

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

インターフェイス VPC エンドポイントで Amazon MSK API を使用する

AWSPrivateLink を搭載したインターフェイス VPC エンドポイントを使用すると、Amazon VPC と Amazon MSK APIs 間のトラフィックが Amazon ネットワークから出るのを防ぐことができます。インターフェイス VPC エンドポイントには、インターネットゲートウェイ、NAT デバイス、VPN 接続、または AWSDirect Connect 接続は必要ありません。AWSPrivateLink は、Amazon VPC 内のプライベート IPs を持つ Elastic Network Interface を使用して、AWSサービス間のプライベート通信を可能にするAWSテクノロジーです。詳細については、Amazon Virtual Private Cloud and Interface VPC Endpoints (AWSPrivateLink)」を参照してください。

アプリケーションは、AWSPrivateLink を使用して Amazon MSK プロビジョンド API と MSK Connect APIs に接続できます。開始するには、 Amazon MSK API の インターフェース VPC エンドポイント を作成して、インターフェース VPC エンドポイント を介して Amazon VPC リソース との間で流れる トラフィック を開始します。FIPS 対応の インターフェイス VPC エンドポイント は、米国 リージョン で使用可能です。詳細については、「 インターフェイス エンドポイント の作成」を参照してください。

この機能を使用すると、 Apache Kafka クライアントは、接続文字列を動的に取得して、インターネット を経由せずに MSK プロビジョンド リソースまたは MSK Connect リソース に接続できます。

インターフェース VPC エンドポイントを作成する際は、以下のサービス名エンドポイントのいずれかを選択してください。

MSK プロビジョンドの場合:
  • com.amazonaws.region.kafka

  • com.amazonaws.region.kafka-fips (FIPS 対応)

region は、 リージョンコード です。MSK プロビジョンド 互換 API を使用するには、このサービス名を選択します。詳細については、https://docs.aws.amazon.com/msk/1.0/apireference/「オペレーション」をご参照ください。

MSK Connect の場合:
  • com.amazonaws.region.kafkaconnect

region は、 リージョンコード です。MSK Connect 互換 API を連携するには、このサービス名を選択します。詳細については、Amazon MSK Connect API リファレンス「アクション」を参照してください。

インターフェイス VPC エンドポイント の作成手順を含む詳細については、AWS PrivateLink「ガイド」の「インターフェイス エンドポイント の作成」を参照してください。

Amazon MSK プロビジョンド API または MSK Connect APIs の VPC エンドポイントへのアクセスを制御する

VPC エンドポイントポリシーは、VPC エンドポイントにポリシーをアタッチするか、IAM ユーザー、グループ、またはロールにアタッチされたポリシーの追加フィールドを使用して、アクセスが指定された VPC エンドポイント経由のみで行われるようにアクセスを制限することにより、アクセスを制御します。MSK プロビジョンド または MSK Connect サービスのいずれかに対する アクセス 権限を定義するには、適切な ポリシー 例を使用してください。

エンドポイントの作成時にポリシーをアタッチしない場合、サービスへのフルアクセスを許可するデフォルトのポリシーが Amazon VPC によって自動的にアタッチされます。エンドポイントポリシーは、IAM アイデンティティベースのポリシーやサービス固有のポリシーを上書きしたり置き換えたりするものではありません。これは、評価項目から指定されたサービスへのアクセスを制御するための別のポリシーです。

詳細については、「AWS PrivateLinkガイド」の「VPC エンドポイントによるサービスのアクセス コントロール」を参照してください。

MSK Provisioned — VPC policy example
読み取り専用アクセス

このサンプルポリシーは、 VPC エンドポイントにアタッチできます。詳細については、Amazon VPC のリソースに対するアクセスの制御を参照してください。これにより、 アクション は、それが アタッチ されている VPC エンドポイント を介した オペレーション の一覧表示と説明のみに制限されます。

{ "Statement": [ { "Sid": "MSKReadOnly", "Principal": "*", "Action": [ "kafka:List*", "kafka:Describe*" ], "Effect": "Allow", "Resource": "*" } ] }
MSK プロビジョンド — VPC エンドポイントポリシーの例

特定の MSK クラスター へのアクセスを制限する

このサンプルポリシーは、 VPC エンドポイントにアタッチできます。これにより、アタッチされている VPC エンドポイントを介して特定の Kafka クラスターへのアクセスを制限されます。

{ "Statement": [ { "Sid": "AccessToSpecificCluster", "Principal": "*", "Action": "kafka:*", "Effect": "Allow", "Resource": "arn:aws:kafka:us-east-1:123456789012:cluster/MyCluster" } ] }
MSK Connect — VPC endpoint policy example
コネクタを一覧表示し、新しいコネクタを作成する

以下は、MSK Connect のエンドポイント ポリシーの例です。このポリシーにより、指定されたロールはコネクタを一覧表示し、新規コネクタを作成できます。

JSON
JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "MSKConnectPermissions", "Effect": "Allow", "Action": [ "kafkaconnect:ListConnectors", "kafkaconnect:CreateConnector" ], "Resource": "*", "Principal": { "AWS": [ "arn:aws:iam::111122223333:role/<ExampleRole>" ] } } ] }
MSK Connect — VPC エンドポイント ポリシーの例

指定された VPC 内の特定の IP アドレスからのリクエストのみを許可する

次の例は、指定した VPC 内の指定した IP アドレスから送信されたリクエストのみが成功するように許可するポリシーを示しています。他の IP アドレスからのリクエストは失敗します。

{ "Statement": [ { "Action": "kafkaconnect:*", "Effect": "Allow", "Principal": "*", "Resource": "*", "Condition": { "IpAddress": { "aws:VpcSourceIp": "192.0.2.123" }, "StringEquals": { "aws:SourceVpc": "vpc-555555555555" } } } ] }