

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 適用於 VPC 互連的 Identity and Access Management
<a name="security-iam"></a>

根據預設， 使用者無法建立或修改 VPC 互連連線。若要授予對 VPC 互連資源的存取權，請將 IAM 政策連接至 IAM 身分，如角色。

**Topics**
+ [建立 VPC 互連連線](#vpc-peering-iam-create)
+ [接受 VPC 互連連線](#vpc-peering-iam-accept)
+ [刪除 VPC 對等互連連線](#vpc-peering-iam-delete)
+ [在特定帳戶內運作](#vpc-peering-iam-account)
+ [在主控台中管理 VPC 對等互連](#peering-connection-console-iam)

如需每個動作的 Amazon VPC 動作以及支援的資源和條件金鑰清單，請參閱《服務授權參考**》中的 [Amazon EC2 的動作、資源和條件索引鍵](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2.html)。

## 範例：建立 VPC 對等互連
<a name="vpc-peering-iam-create"></a>

下列政策授予使用者許可來使用標記有 `Purpose=Peering` 的 VPC 建立 VPC 對等互連請求。第一個陳述式會將條件金鑰 (`ec2:ResourceTag`) 套用至 VPC 資源。請注意，`CreateVpcPeeringConnection` 動作的 VPC 資源一律是申請者 VPC。

第二個陳述式授予使用者許可來建立 VPC 對等互連資源，因此使用 \$1 萬用字元取代特定資源 ID。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect":"Allow",
      "Action": "ec2:CreateVpcPeeringConnection",
      "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc/*",
      "Condition": {
        "StringEquals": {
          "ec2:ResourceTag/Purpose": "Peering"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "ec2:CreateVpcPeeringConnection",
      "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc-peering-connection/*"
    }
  ]
}
```

------

下列政策授予指定 AWS 帳戶中的使用者許可，以使用指定區域中的任何 VPC 建立 VPC 互連連線，但前提是接受互連連線的 VPC 是特定帳戶中的特定 VPC。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVpcPeeringConnection",
            "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc/*"
        },
        {
            "Effect": "Allow",
            "Action": "ec2:CreateVpcPeeringConnection",
            "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc-peering-connection/*",
            "Condition": {
                "ArnEquals": {
                    "ec2:AccepterVpc": "arn:aws:ec2:us-east-1:111122223333:vpc/vpc-1234567890abcdef0"
                }
            }
        }
    ]
}
```

------

## 範例：接受 VPC 對等互連
<a name="vpc-peering-iam-accept"></a>

下列政策授予使用者許可，以接受來自特定 AWS 帳戶的 VPC 互連連線請求。這有助於防止使用者接受來自不明帳戶的 VPC 互連連線請求。該陳述式使用 `ec2:RequesterVpc` 條件金鑰強制執行此作業。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect":"Allow",
      "Action": "ec2:AcceptVpcPeeringConnection",
      "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc-peering-connection/*",
      "Condition": {
        "ArnEquals": {
          "ec2:RequesterVpc": "arn:aws:ec2:us-east-1:111122223333:vpc/*"
        }
      }
    },
    {
      "Effect":"Allow",
      "Action": "ec2:AcceptVpcPeeringConnection",
      "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc/*"
    }
  ]
}
```

------

下列政策授予使用者許可，在 VPC 具有 `Purpose=Peering` 標籤時接受 VPC 對等互連請求。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect":"Allow",
      "Action": "ec2:AcceptVpcPeeringConnection",
      "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc-peering-connection/*"
    },
    {
      "Effect": "Allow",
      "Action": "ec2:AcceptVpcPeeringConnection",
      "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc/*",
      "Condition": {
        "StringEquals": {
          "ec2:ResourceTag/Purpose": "Peering"
        }
      }
    }
  ]
}
```

------

## 範例：刪除 VPC 對等互連
<a name="vpc-peering-iam-delete"></a>

下列政策授予指定帳戶中的使用者許可來刪除任何 VPC 對等互連，但使用相同帳戶中所指定 VPC 的 VPC 對等互連除外。此政策同時指定 `ec2:AccepterVpc` 和 `ec2:RequesterVpc` 條件金鑰，因為 VPC 可能已是原始 VPC 對等互連連線請求中的申請者 VPC 或對等 VPC。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:DeleteVpcPeeringConnection",
            "Resource": "arn:aws:ec2:us-east-1:123456789012:vpc-peering-connection/*",
            "Condition": {
                "ArnNotEquals": {
                    "ec2:AccepterVpc": "arn:aws:ec2:us-east-1:123456789012:vpc/vpc-1234567890abcdef0",
                    "ec2:RequesterVpc": "arn:aws:ec2:us-east-1:123456789012:vpc/vpc-0abcdef1234567890"
                }
            }
        }
    ]
}
```

------

## 範例：在特定帳戶內運作
<a name="vpc-peering-iam-account"></a>

下列政策授予使用者許可使用特定帳戶內的 VPC 對等互連。使用者可以檢視、建立、接受、拒絕和刪除 VPC 對等互連，只要它們都在同一個 AWS 帳戶中。

第一個陳述式授予使用者許可來檢視所有 VPC 對等互連。在此情況下，`Resource` 元素需要 \$1 萬用字元，因為此 API 動作 (`DescribeVpcPeeringConnections`) 目前不支援資源層級許可。

第二個陳述式授予使用者許可來建立 VPC 對等互連，並存取指定帳戶中的所有 VPC，才能這麼做。

第三個陳述式使用 \$1 萬用字元做為 `Action` 元素的一部分，以授予許可執行所有 VPC 對等互連動作。條件金鑰可確保僅對 VPC 對等互連連線（VPC 為該帳戶的一部分）執行動作。例如，如果接受者或申請者 VPC 位於不同的帳戶中，則使用者無法刪除 VPC 對等互連。使用者無法建立 VPC 位於不同帳戶的 VPC 互連連線。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:DescribeVpcPeeringConnections",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateVpcPeeringConnection",
                "ec2:AcceptVpcPeeringConnection"
            ],
            "Resource": "arn:aws:ec2:*:111122223333:vpc/*"
        },
        {
            "Effect": "Allow",
            "Action": "ec2:*VpcPeeringConnection",
            "Resource": "arn:aws:ec2:*:111122223333:vpc-peering-connection/*",
            "Condition": {
                "ArnEquals": {
                    "ec2:AccepterVpc": "arn:aws:ec2:*:111122223333:vpc/*",
                    "ec2:RequesterVpc": "arn:aws:ec2:*:111122223333:vpc/*"
                }
            }
        }
    ]
}
```

------

## 範例：使用主控台管理 VPC 對等互連
<a name="peering-connection-console-iam"></a>

若要在 Amazon VPC 主控台中檢視 VPC 互連連線，使用者必須具備使用 `ec2:DescribeVpcPeeringConnections` 動作的許可。若要使用 **Create Peering Connection (建立對等連線)** 頁面，使用者必須具備使用 `ec2:DescribeVpcs` 動作的許可。這會授予他們許可來檢視和選取 VPC。您可以將資源層級許可套用至所有 `ec2:*PeeringConnection` 動作 (但 `ec2:DescribeVpcPeeringConnections` 除外)。

下列政策授予使用者許可來檢視 VPC 對等互連，以及使用 **Create VPC Peering Connection** (建立 VPC 對等互連) 對話方塊僅利用特定申請者 VPC 來建立 VPC 對等互連。如果使用者嘗試建立與不同申請者 VPC 的 VPC 互連連線，則請求會失敗。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect":"Allow",
      "Action": [
        "ec2:DescribeVpcPeeringConnections", "ec2:DescribeVpcs"
      ],
      "Resource": "*"
    },
    {
      "Effect":"Allow",
      "Action": "ec2:CreateVpcPeeringConnection",
      "Resource": [
        "arn:aws:ec2:*:*:vpc/vpc-1234567890abcdef0",
        "arn:aws:ec2:*:*:vpc-peering-connection/*"
      ]
    }
  ]
}
```

------