適用於 VPC 互連的 Identity and Access Management - Amazon Virtual Private Cloud

適用於 VPC 互連的 Identity and Access Management

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

如需每個動作的 Amazon VPC 動作以及支援的資源和條件金鑰清單,請參閱 Service Authorization Reference 中的 Actions, resources, and condition keys for Amazon EC2

範例:建立 VPC 對等互連

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

第二個陳述式授予使用者許可來建立 VPC 對等互連資源,因此使用 * 萬用字元取代特定資源 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 對等互連

下列政策授予使用者許可接受來自特定 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/*" } } } ] }

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

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

範例:刪除 VPC 對等互連

下列政策授予指定帳戶中的使用者許可來刪除任何 VPC 對等互連,但使用相同帳戶中所指定 VPC 的 VPC 對等互連除外。此政策同時指定 ec2:AccepterVpcec2: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" } } } ] }

範例:在特定帳戶內運作

下列政策授予使用者許可使用特定帳戶內的 VPC 對等互連。使用者可以檢視、建立、接受、拒絕和刪除 VPC 對等互連連線,前提是他們全部都在相同的 AWS 帳戶內。

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

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

第三個陳述式使用 * 萬用字元做為 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 對等互連

若要在 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/*" ] } ] }