

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

# 创建限制到 Virtual Private Cloud 的接入点
<a name="access-points-for-fsxn-vpc"></a>

创建接入点时，您可以选择允许通过互联网访问接入点，也可以指定通过该接入点发出的所有请求都必须来自特定的 Amazon Virtual Private Cloud。可从 Internet 访问的接入点被认为是具有 `Internet` 网络起源。它可以从互联网上的任何地方使用，但要遵守接入点、底层存储桶或 Amazon FSx 卷以及相关资源（例如请求的对象）的任何其他访问限制。只能从指定的 Amazon VPC 访问的接入点的网络来源为`VPC`，Amazon S3 会拒绝向该接入点发出的并非来自该亚马逊 VPC 的任何请求。

**重要**  
您只能在创建接入点时指定接入点的网络起源。创建接入点后，无法更改其网络起源。

要将接入点限制为仅限 Amazon VPC 的访问，请在创建接入点的请求中加入`VpcConfiguration`参数。在`VpcConfiguration`参数中，您可以指定您希望能够使用接入点的 Amazon VPC ID。如果请求是通过接入点发出的，则该请求必须来自亚马逊 VPC，否则 Amazon S3 将拒绝该请求。

您可以使用 AWS CLI、 AWS SDKs或 REST 检索接入点的网络来源 APIs。如果接入点指定了 Amazon VPC 配置，则其网络来源为`VPC`。否则，接入点的网络起源为 `Internet`。

**Example**  
***示例：创建仅限于 Amazon VPC 访问的接入点***  
以下示例在账户`amzn-s3-demo-bucket`中创建了一个名`example-vpc-ap`为存储桶的接入点`123456789012`，该接入点仅允许从 `vpc-1a2b3c` Amazon VPC 进行访问。然后，该示例验证新接入点是否具有 `VPC` 网络起源。  

```
$ aws fsx create-and-attach-s3-access-point --name example-vpc-ap --type ONTAP --ontap-configuration \
   VolumeId=fsvol-0123456789abcdef9,FileSystemIdentity='{Type=UNIX,UnixUser={Name=ec2-user}}' \
   --s3-access-point VpcConfiguration='{VpcId=vpc-id},Policy=access-point-policy-json
```

```
$ {
  {
     "S3AccessPointAttachment": {
        "Lifecycle": "CREATING",
        "CreationTime": 1728935791.8,
        "Name": "example-vpc-ap",
        "OntapConfiguration": {
            "VolumeId": "fsvol-0123456789abcdef9",
            "FileSystemIdentity": {
                "Type": "UNIX",
                "UnixUser": {
                    "Name": "my-unix-user"
                }
            }
        },
        "S3AccessPoint": {
            "ResourceARN": "arn:aws:s3:us-east-1:111122223333:accesspoint/example-vpc-ap",
            "Alias": "access-point-abcdef0123456789ab12jj77xy51zacd4-ext-s3alias",
            "VpcConfiguration": { 
                "VpcId": "vpc-1a2b3c"
            }
        }
     }
  }
```

要将接入点与 Amazon VPC 配合使用，您必须修改亚马逊 VPC 终端节点的访问策略。亚马逊 VPC 终端节点允许流量从您的亚马逊 VPC 流向亚马逊 S3。他们有访问控制策略，用于控制如何允许 Amazon VPC 内的资源与 Amazon S3 交互。只有当 Amazon VPC 终端节点策略授予访问接入点和底层存储桶的访问权限时，才能通过接入点成功从您的 Amazon VPC 发送到 Amazon S3 的请求。

**注意**  
要使资源只能在 Amazon VPC 内访问，请务必为您的 Amazon VPC 终端节点创建[私有托管区域](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html)。要使用私有托管区域，请[修改您的 Amazon VPC 设置](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating)，将 [Amazon VPC 网络`enableDnsSupport`属`enableDnsHostnames`性和](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-support)设置为`true`。

以下示例策略声明配置了一个允许调用的 Amazon VPC 终端节点`GetObject`和一个名为`example-vpc-ap`的接入点。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
    {
        "Principal": "*",
        "Action": [
            "s3:GetObject"
        ],
        "Effect": "Allow",
        "Resource": [
            "arn:aws:s3:us-east-1:123456789012:accesspoint/example-vpc-ap/object/*"
        ]
    }]
}
```

------

**注意**  
此示例中的 `Resource` 声明使用 Amazon 资源名称（ARN）指定接入点。

有关亚马逊 VPC 终端节点策略的更多信息，请参阅 Amazon VP *C 用户指南中的 Amaz* [on S3 网关终端节点](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-s3.html#vpc-endpoints-policies-s3)。