Identity and Access Management für VPC Peering - Amazon Virtual Private Cloud

Identity and Access Management für VPC Peering

Standardmäßig können -Benutzer keine VPC-Peering-Verbindungen erstellen oder ändern. Um den Zugriff auf VPC-Peering-Ressourcen zu gewähren, ordnen Sie eine IAM-Richtlinie einer IAM-Identität zu, z. B. einer Rolle.

Eine Liste der Amazon VPC-Aktionen und der unterstützten Ressourcen und Bedingungsschlüssel für jede Aktion finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon EC2 in der Service-Autorisierungsreferenz.

Beispiel: Erstellen einer VPC-Peering-Verbindung

Die folgende Richtlinie gewährt Benutzern die Erlaubnis, Anfragen für die VPC-Peering-Verbindung unter Verwendung von VPCs zu erstellen, die mit dem Tag Purpose=Peering versehen sind. In der ersten Anweisung wird ein Bedingungsschlüssel (ec2:ResourceTag) auf die VPC-Ressource angewendet. Beachten Sie, dass die VPC-Ressource für die Aktion CreateVpcPeeringConnection immer die VPC des Anfragestellers ist.

Die zweite Anweisung erteilt Benutzern die Berechtigung, die Ressourcen für die VPC-Peering-Verbindung zu erstellen, und verwendet daher den Platzhalter * anstelle einer spezifischen Ressourcen-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/*" } ] }

Die folgende Richtlinie gewährt Benutzern im angegebenen AWS-Konto die Berechtigung, VPC-Peering-Verbindungen mit einer beliebigen VPC in der angegebenen Region zu erstellen, jedoch nur, wenn die VPC, die die Peering-Verbindung akzeptiert, eine bestimmte VPC im angegebenen Konto ist.

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" } } } ] }

Beispiel: Akzeptieren einer VPC-Peering-Verbindung

Mit der folgenden Richtlinie wird Benutzern die Berechtigung zum Akzeptieren von Anfragen für die VPC-Peering-Verbindung von einem spezifischen AWS-Konto gewährt. So wird verhindert, dass Benutzer VPC-Peering-Verbindungsanfragen von unbekannten Konten akzeptieren können. Die Anweisung verwendet den Bedingungsschlüssel ec2:RequesterVpc, um dies zu erzwingen.

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

Die folgende Richtlinie erlaubt es Benutzern, VPC-Peering-Anfragen zu akzeptieren, wenn ihre VPC über das Tag Purpose=Peering verfügt.

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" } } } ] }

Beispiel: Löschen einer VPC-Peering-Verbindung

Die folgende Richtlinie gewährt Benutzern des angegebenen Kontos die Berechtigung, jede VPC-Peering-Verbindung zu löschen, mit Ausnahme derjenigen, die die angegebene VPC verwenden, die sich im selben Konto befindet. In der Richtlinie werden die beiden Bedingungsschlüssel ec2:AccepterVpc und ec2:RequesterVpc verwendet, da in der ursprünglichen VPC-Peering-Verbindungsanfrage die VPC sowohl die des Anfragestellers als auch die Peer-VPC sein könnte.

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" } } } ] }

Beispiel: Arbeiten innerhalb eines bestimmten Kontos

Mit der folgenden Richtlinie wird Benutzern die Berechtigung zum Arbeiten mit VPC-Peering-Verbindungen in einem bestimmten Konto gewährt. Benutzer können VPC-Peering-Verbindungen anzeigen, erstellen, akzeptieren, ablehnen und löschen, die sich im gleichen AWS-Konto befinden.

Die erste Anweisung gewährt Benutzern das Anzeigen aller VPC-Peering-Verbindungen. Für das Element Resource ist in diesem Fall das Sternchen (*) als Platzhalter erforderlich, da für diese API-Aktion (DescribeVpcPeeringConnections) derzeit Berechtigungen auf Ressourcenebene nicht unterstützt werden.

Mit der zweiten Anweisung wird Benutzern die Berechtigung zum Erstellen von VPC-Peering-Verbindungen, sowie der Zugriff auf sämtliche VPCs im angegebenen Konto, um das zu tun, gewährt.

Die dritte Anweisung verwendet einen Platzhalter * als Teil des Elements Action, um die Genehmigung für alle VPC-Peering-Verbindungsaktionen zu erteilen. Durch die Bedingungsschlüssel wird sichergestellt, dass die Aktionen nur für VPC-Peering-Verbindungen in VPCs im Konto ausgeführt werden können. Beispielsweise kann ein Benutzer eine VPC-Peering-Verbindung nicht löschen, wenn sich entweder der akzeptierende oder der anfordernde VPC in einem anderen Konto befindet. Benutzer können keine VPC-Peering-Verbindung zwischen VPCs in unterschiedlichen Konten erstellen.

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

Beispiel: VPC-Peering-Verbindungen mithilfe der Konsole verwalten

Um VPC-Peering-Verbindungen in der Amazon VPC-Konsole anzuzeigen, müssen Benutzer über die Berechtigung zum Verwenden der Aktion ec2:DescribeVpcPeeringConnections verfügen. Um das Dialogfeld Create VPC Peering Connection (VPC Peering-Verbindung erstellen) zu verwenden, benötigen Benutzer die Berechtigung zum Verwenden der Aktion ec2:DescribeVpcs. Das gibt ihnen die Berechtigung, eine VPC anzeigen und auswählen. Sie können auf alle ec2:*PeeringConnection-Aktionen mit Ausnahme von ec2:DescribeVpcPeeringConnections Berechtigungen auf Ressourcenebene anwenden.

Die folgende Richtlinie gewährt Benutzern die Berechtigung, VPC-Peering-Verbindungen anzuzeigen und das Dialogfeld Create VPC Peering Connection (VPC-Peering-Verbindung erstellen) zu verwenden, um eine VPC-Peering-Verbindung zu erstellen, die nur eine bestimmte Anforderungs-VPC verwendet. Wenn Benutzer versuchen, eine VPC-Peering-Verbindung in einer anderen anfordernden VPC zu erstellen, schlägt die Anfrage fehl.

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