

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

# 基于身份的策略示例 AWS PrivateLink
<a name="security_iam_id-based-policy-examples"></a>

默认情况下，用户和角色没有创建或修改 AWS PrivateLink 资源的权限。要授予用户对所需资源执行操作的权限，IAM 管理员可以创建 IAM 策略。

要了解如何使用这些示例 JSON 策略文档创建基于 IAM 身份的策略，请参阅《IAM 用户指南》**中的[创建 IAM 策略（控制台）](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html)。

有关由 AWS PrivateLink定义的操作和资源类型（包括每种资源类型的格式）的 ARNs 详细信息，请参阅《*服务授权参考*》[中的 Amazon EC2 的操作、资源和条件密钥](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2.html)。

**Topics**
+ [控制 VPC 端点的使用](#endpoints-example)
+ [基于服务拥有者控制 VPC 端点创建](#create-endpoints-example)
+ [控制可为 VPC 端点服务指定的私有 DNS 名称](#private-dns-name-example)
+ [控制可为 VPC 端点服务指定的服务名称](#service-names-example)

## 控制 VPC 端点的使用
<a name="endpoints-example"></a>

默认情况下， 用户无权使用终端节点。您可以创建一个基于身份的策略，向用户授予创建、修改、描述和删除端点的权限。示例如下：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":[
        {
            "Effect": "Allow",
            "Action":"ec2:*VpcEndpoint*",
            "Resource":"*"
        }
    ]
}
```

------

有关使用 VPC 端点控制对服务的访问的信息，请参阅 [使用端点策略控制对 VPC 端点的访问](vpc-endpoints-access.md)。

## 基于服务拥有者控制 VPC 端点创建
<a name="create-endpoints-example"></a>

您可以使用 `ec2:VpceServiceOwner` 条件键根据服务拥有者（`amazon`、`aws-marketplace` 或账户 ID）来控制可以创建的 VPC 端点。以下示例授予使用指定的服务拥有者创建 VPC 端点的权限。要使用此示例，请替换区域、账户 ID 和服务拥有者。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVpcEndpoint",
            "Resource": [
                "arn:aws:ec2:us-east-1:111111111111:vpc/*",
                "arn:aws:ec2:us-east-1:111111111111:security-group/*",
                "arn:aws:ec2:us-east-1:111111111111:subnet/*",
                "arn:aws:ec2:us-east-1:111111111111:route-table/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVpcEndpoint",
            "Resource": [
                "arn:aws:ec2:us-east-1:111111111111:vpc-endpoint/*"
            ],
            "Condition": {
                "StringEquals": {
                    "ec2:VpceServiceOwner": [
                        "amazon"
                    ]
                }
            }
        }
    ]
}
```

------

## 控制可为 VPC 端点服务指定的私有 DNS 名称
<a name="private-dns-name-example"></a>

您可以使用 `ec2:VpceServicePrivateDnsName` 条件键来控制可根据与 VPC 端点服务关联的私有 DNS 名称修改或创建哪些 VPC 端点服务。以下示例授予使用指定的私有 DNS 名称创建 VPC 端点服务的权限。要使用此示例，请替换区域、账户 ID 和私有 DNS 名称。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:ModifyVpcEndpointServiceConfiguration",
                "ec2:CreateVpcEndpointServiceConfiguration"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111111111111:vpc-endpoint-service/*"
            ],
            "Condition": {
                "StringEquals": {
                    "ec2:VpceServicePrivateDnsName": [
                        "example.com"
                    ]
                }
            }
        }
    ]
}
```

------

## 控制可为 VPC 端点服务指定的服务名称
<a name="service-names-example"></a>

您可以使用 `ec2:VpceServiceName` 条件键根据 VPC 端点服务名称来控制可以创建的 VPC 端点。以下示例授予使用指定的服务名称创建 VPC 端点的权限。要使用此示例，请替换区域、账户 ID 和服务名称。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVpcEndpoint",
            "Resource": [
                "arn:aws:ec2:us-east-1:111111111111:vpc/*",
                "arn:aws:ec2:us-east-1:111111111111:security-group/*",
                "arn:aws:ec2:us-east-1:111111111111:subnet/*",
                "arn:aws:ec2:us-east-1:111111111111:route-table/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVpcEndpoint",
            "Resource": [
                "arn:aws:ec2:us-east-1:111111111111:vpc-endpoint/*"
            ],
            "Condition": {
                "StringEquals": {
                    "ec2:VpceServiceName": [
                        "com.amazonaws.111111111111.s3"
                    ]
                }
            }
        }
    ]
}
```

------