

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

# 将 Amazon Kinesis Data Streams 与接口 VPC 端点搭配使用
<a name="vpc"></a>

您可以使用接口 VPC 端点，以防止 Amazon VPC 和 Kinesis Data Streams 之间的流量离开亚马逊网络。接口 VPC 终端节点不需要互联网网关、NAT 设备、VPN 连接或 Direct Connect 连接。接口 VPC 终端节点由一项 AWS 技术提供支持 AWS PrivateLink，该技术允许使用弹性网络接口在 AWS 服务之间进行私密通信，并使用您的 Amazon VPC IPs 中的私有接口。有关更多信息，请参阅[亚马逊 Virtual Private Cloud](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Introduction.html) 和[接口 VPC 终端节点 (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint)。

**Topics**
+ [使用 Kinesis Data Streams 的接口 VPC 端点](#using-interface-vpc-endpoints)
+ [控制对 Kinesis Data Streams 的 VPC 端点的访问](#interface-vpc-endpoints-policies)
+ [Kinesis Data Streams 的 VPC 端点策略的可用性](#availability)

## 使用 Kinesis Data Streams 的接口 VPC 端点
<a name="using-interface-vpc-endpoints"></a>

要开始使用，您不需要更改流、产生器或用户的设置。为 Kinesis Data Streams 创建一个接口 VPC 端点，以便进出您的 Amazon VPC 资源的流量流过接口 VPC 端点。启用 FIPS 的接口 VPC 端点适用于美国区域。有关更多信息，请参阅[创建接口端点](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint)。

亚马逊 Kinesis 生产者库 (KPL) 和 Kinesis 消费者库 (KCL) 使用公共终端节点或私有接口 VPC 终端节点（以使用者为准）调用 AWS 亚马逊和亚马逊 CloudWatch DynamoDB 等服务。例如，如果您的 KCL 应用程序在带有启用了 VPC 端点的 DynamoDB 接口的 VPC 中运行，则 DynamoDB 和您的 KCL 应用程序之间的调用会流经接口 VPC 端点。

## 控制对 Kinesis Data Streams 的 VPC 端点的访问
<a name="interface-vpc-endpoints-policies"></a>

借助 VPC 端点策略，您可以控制访问，方式是：将策略附加到 VPC 端点或使用附加到 IAM 用户、组或角色的策略中的额外字段，从而限制只能通过特定 VPC 端点进行访问。当与 IAM 策略共同使用以便仅授予通过指定 VPC 端点访问 Kinesis 数据流操作的权限时，这些策略可用于将对特定流的访问限制到指定 VPC 端点。

以下是用于访问 Kinesis 数据流的示例端点策略。
+ **VPC 策略示例：只读访问** – 此示例策略可以附加到 VPC 端点。（有关更多信息，请参阅[控制对 Amazon VPC 资源的访问](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_IAM.html)）。它限制仅能通过其附加的 VPC 端点列出或描述 Kinesis 数据流。

  ```
  {
    "Statement": [
      {
        "Sid": "ReadOnly",
        "Principal": "*",
        "Action": [
          "kinesis:List*",
          "kinesis:Describe*"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```
+ **VPC 策略示例：限制对特定 Kinesis 数据流的访问** – 此示例策略可以附加到 VPC 端点。它限制通过其附加的 VPC 端点访问特定的数据流。

  ```
  {
    "Statement": [
      {
        "Sid": "AccessToSpecificDataStream",
        "Principal": "*",
        "Action": "kinesis:*",
        "Effect": "Allow",
        "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/MyStream"
      }
    ]
  }
  ```
+ **IAM 策略示例：限制只能通过特定的 VPC 端点访问特定流** – 此示例策略可以附加到 IAM 用户、角色或组。它限制只能通过特定的 VPC 端点访问特定的 Kinesis 数据流。

------
#### [ JSON ]

****  

  ```
  {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
        {
           "Sid": "AccessFromSpecificEndpoint",
           "Action": "kinesis:*",
           "Effect": "Deny",
           "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/MyStream",
           "Condition": { "StringNotEquals" : { "aws:sourceVpce": "vpce-11aa22bb" } }
        }
     ]
  }
  ```

------

## Kinesis Data Streams 的 VPC 端点策略的可用性
<a name="availability"></a>

以下区域支持带有策略的 Kinesis Data Streams 接口 VPC 端点：
+ 欧洲地区（巴黎）
+ 欧洲地区（爱尔兰）
+ 美国东部（弗吉尼亚州北部）
+ 欧洲地区（斯德哥尔摩）
+ 美国东部（俄亥俄州）
+ 欧洲地区（法兰克福）
+ 南美洲（圣保罗）
+ 欧洲地区（伦敦）
+ 亚太地区（东京）
+ 美国西部（北加利福尼亚）
+ 亚太地区（新加坡）
+ 亚太地区（悉尼）
+ 中国（北京）
+ 中国（宁夏）
+ 亚太地区（香港）
+ 中东（巴林）
+ 中东（阿联酋）：
+ 欧洲地区（米兰）
+ 非洲（开普敦）
+ 亚太地区（孟买）
+ 亚太地区（首尔）
+ 加拿大（中部）
+ 美国西部（俄勒冈州）（usw2-az4 除外）
+ AWS GovCloud （美国东部）
+ AWS GovCloud （美国西部）
+ 亚太地区（大阪）
+ 欧洲（苏黎世）
+ 亚太地区（海得拉巴）