Beispiele VPC für Amazon-Richtlinien - Amazon Virtual Private Cloud

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Beispiele VPC für Amazon-Richtlinien

Standardmäßig sind IAM Rollen nicht berechtigt, VPC Ressourcen zu erstellen oder zu ändern. Sie können auch keine Aufgaben mit dem AWS Management Console AWS CLI, oder ausführen AWS API. Ein IAM Administrator muss IAM Richtlinien erstellen, die Rollen die Berechtigung gewähren, bestimmte API Operationen mit den angegebenen Ressourcen auszuführen, die sie benötigen. Der Administrator muss diese Richtlinien dann den IAM Rollen zuordnen, für die diese Berechtigungen erforderlich sind.

Informationen zum Erstellen einer IAM identitätsbasierten Richtlinie anhand dieser JSON Beispieldokumente finden Sie unter IAMRichtlinien erstellen im IAMBenutzerhandbuch.

Bewährte Methoden für Richtlinien

Identitätsbasierte Richtlinien legen fest, ob jemand VPC Amazon-Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder diese löschen kann. Dies kann zusätzliche Kosten für Ihr verursachen AWS-Konto. Befolgen Sie beim Erstellen oder Bearbeiten identitätsbasierter Richtlinien die folgenden Anleitungen und Empfehlungen:

  • Beginnen Sie mit AWS verwalteten Richtlinien und wechseln Sie zu Berechtigungen mit den geringsten Rechten — Verwenden Sie die AWS verwalteten Richtlinien, die Berechtigungen für viele gängige Anwendungsfälle gewähren, um Ihren Benutzern und Workloads zunächst Berechtigungen zu gewähren. Sie sind in Ihrem verfügbar. AWS-Konto Wir empfehlen Ihnen, die Berechtigungen weiter zu reduzieren, indem Sie vom AWS Kunden verwaltete Richtlinien definieren, die speziell auf Ihre Anwendungsfälle zugeschnitten sind. Weitere Informationen finden Sie AWS im IAMBenutzerhandbuch unter AWS Verwaltete Richtlinien oder Verwaltete Richtlinien für Jobfunktionen.

  • Berechtigungen mit den geringsten Rechten anwenden — Wenn Sie Berechtigungen mit IAM Richtlinien festlegen, gewähren Sie nur die Berechtigungen, die für die Ausführung einer Aufgabe erforderlich sind. Sie tun dies, indem Sie die Aktionen definieren, die für bestimmte Ressourcen unter bestimmten Bedingungen durchgeführt werden können, auch bekannt als die geringsten Berechtigungen. Weitere Informationen zur Verwendung IAM zum Anwenden von Berechtigungen finden Sie IAMim Benutzerhandbuch unter Richtlinien und Berechtigungen. IAM

  • Verwenden Sie Bedingungen in IAM Richtlinien, um den Zugriff weiter einzuschränken — Sie können Ihren Richtlinien eine Bedingung hinzufügen, um den Zugriff auf Aktionen und Ressourcen einzuschränken. Sie können beispielsweise eine Richtlinienbedingung schreiben, um anzugeben, dass alle Anfragen mit gesendet werden müssenSSL. Sie können auch Bedingungen verwenden, um Zugriff auf Serviceaktionen zu gewähren, wenn diese über einen bestimmten Zweck verwendet werden AWS-Service, z. AWS CloudFormation B. Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONRichtlinienelemente: Bedingung.

  • Verwenden Sie IAM Access Analyzer, um Ihre IAM Richtlinien zu validieren, um sichere und funktionale Berechtigungen zu gewährleisten. IAM Access Analyzer validiert neue und bestehende Richtlinien, sodass die Richtlinien der IAM Richtliniensprache (JSON) und den IAM bewährten Methoden entsprechen. IAMAccess Analyzer bietet mehr als 100 Richtlinienprüfungen und umsetzbare Empfehlungen, um Sie bei der Erstellung sicherer und funktionaler Richtlinien zu unterstützen. Weitere Informationen finden Sie unter IAMAccess Analyzer-Richtlinienvalidierung im IAMBenutzerhandbuch.

  • Multi-Faktor-Authentifizierung erforderlich (MFA) — Wenn Sie ein Szenario haben, in dem IAM Benutzer oder ein Root-Benutzer erforderlich sind AWS-Konto, aktivieren Sie die Option MFA für zusätzliche Sicherheit. Um festzulegen, MFA wann API Operationen aufgerufen werden, fügen Sie MFA Bedingungen zu Ihren Richtlinien hinzu. Weitere Informationen finden Sie unter Konfiguration des MFA -geschützten API Zugriffs im IAMBenutzerhandbuch.

Weitere Informationen zu bewährten Methoden finden Sie unter Bewährte Sicherheitsmethoden IAM im IAM Benutzerhandbuch. IAM

Verwenden Sie die VPC Amazon-Konsole

Um auf die VPC Amazon-Konsole zugreifen zu können, benötigen Sie ein Mindestmaß an Berechtigungen. Diese Berechtigungen müssen es Ihnen ermöglichen, Details zu den VPC Amazon-Ressourcen in Ihrem AWS Konto aufzulisten und einzusehen. Wenn Sie eine identitätsbasierte Richtlinie erstellen, die restriktiver ist als die erforderlichen Mindestberechtigungen, funktioniert die Konsole für Entitäten (IAMRollen) mit dieser Richtlinie nicht wie vorgesehen.

Die folgende Richtlinie gewährt einer Rolle die Berechtigung, Ressourcen in der VPC Konsole aufzulisten, sie jedoch nicht zu erstellen, zu aktualisieren oder zu löschen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeAccountAttributes", "ec2:DescribeAddresses", "ec2:DescribeAvailabilityZones", "ec2:DescribeClassicLinkInstances", "ec2:DescribeClientVpnEndpoints", "ec2:DescribeCustomerGateways", "ec2:DescribeDhcpOptions", "ec2:DescribeEgressOnlyInternetGateways", "ec2:DescribeFlowLogs", "ec2:DescribeInternetGateways", "ec2:DescribeManagedPrefixLists", "ec2:DescribeMovingAddresses", "ec2:DescribeNatGateways", "ec2:DescribeNetworkAcls", "ec2:DescribeNetworkInterfaceAttribute", "ec2:DescribeNetworkInterfacePermissions", "ec2:DescribeNetworkInterfaces", "ec2:DescribePrefixLists", "ec2:DescribeRouteTables", "ec2:DescribeSecurityGroupReferences", "ec2:DescribeSecurityGroups", "ec2:DescribeSecurityGroupRules", "ec2:DescribeStaleSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeTags", "ec2:DescribeTrafficMirrorFilters", "ec2:DescribeTrafficMirrorSessions", "ec2:DescribeTrafficMirrorTargets", "ec2:DescribeTransitGateways", "ec2:DescribeTransitGatewayVpcAttachments", "ec2:DescribeTransitGatewayRouteTables", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcClassicLink", "ec2:DescribeVpcClassicLinkDnsSupport", "ec2:DescribeVpcEndpoints", "ec2:DescribeVpcEndpointConnectionNotifications", "ec2:DescribeVpcEndpointConnections", "ec2:DescribeVpcEndpointServiceConfigurations", "ec2:DescribeVpcEndpointServicePermissions", "ec2:DescribeVpcEndpointServices", "ec2:DescribeVpcPeeringConnections", "ec2:DescribeVpcs", "ec2:DescribeVpnConnections", "ec2:DescribeVpnGateways", "ec2:GetManagedPrefixListAssociations", "ec2:GetManagedPrefixListEntries" ], "Resource": "*" } ] }

Für Rollen, die nur Aufrufe an AWS CLI oder die tätigen, müssen Sie keine Mindestberechtigungen für die Konsole gewähren AWS API. Erlauben Sie stattdessen den Zugriff nur für Aktionen, die dem API Vorgang entsprechen, den die Rolle ausführen muss.

Erstellen Sie ein VPC mit einem öffentlichen Subnetz

Das folgende Beispiel ermöglicht das Erstellen von Rollen, SubnetzenVPCs, Routing-Tabellen und Internet-Gateways. Rollen können auch ein Internet-Gateway mit einem verbinden VPC und Routen in Routentabellen erstellen. Die ec2:ModifyVpcAttribute Aktion ermöglicht es Rollen, DNS Hostnamen für die zu aktivierenVPC, sodass jede Instance, die in einem gestartet wird, einen DNS Hostnamen VPC erhält.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:CreateVpc", "ec2:CreateSubnet", "ec2:DescribeAvailabilityZones", "ec2:CreateRouteTable", "ec2:CreateRoute", "ec2:CreateInternetGateway", "ec2:AttachInternetGateway", "ec2:AssociateRouteTable", "ec2:ModifyVpcAttribute" ], "Resource": "*" } ] }

Die obige Richtlinie ermöglicht es auch, Rollen VPC in der VPC Amazon-Konsole zu erstellen.

VPCRessourcen ändern und löschen

Möglicherweise möchten Sie kontrollieren, welche VPC Ressourcen Rollen ändern oder löschen können. Mit der folgenden Richtlinie können Rollen beispielsweise mit Routing-Tabellen, die die Markierung Purpose=Test haben, arbeiten und diese löschen. Die Richtlinie legt außerdem fest, dass Rollen nur Internet-Gateways mit der Markierung Purpose=Test löschen können. Rollen können nicht mit Routing-Tabellen oder Internet-Gateways arbeiten, die diese Markierung nicht haben.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:DeleteInternetGateway", "Resource": "arn:aws:ec2:*:*:internet-gateway/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Purpose": "Test" } } }, { "Effect": "Allow", "Action": [ "ec2:DeleteRouteTable", "ec2:CreateRoute", "ec2:ReplaceRoute", "ec2:DeleteRoute" ], "Resource": "arn:aws:ec2:*:*:route-table/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Purpose": "Test" } } } ] }

Verwalten von Sicherheitsgruppen

Mit der folgenden Richtlinie können Rollen Sicherheitsgruppen verwalten. Die erste Anweisung ermöglicht es Rollen, jede Sicherheitsgruppe mit der Markierung Stack=test zu löschen und die eingehenden und ausgehenden Regeln für jede Sicherheitsgruppe mit der Markierung Stack=test zu verwalten. Die zweite Anweisung erfordert, dass Rollen alle von ihnen erstellten Sicherheitsgruppen mit der Markierung Stack=Test kennzeichnen. Die dritte Anweisung ermöglicht es Rollen, Markierungen zu erstellen, wenn eine Sicherheitsgruppe erstellt wird. Die vierte Anweisung ermöglicht es Rollen, jede Sicherheitsgruppe und Sicherheitsgruppenregel anzuzeigen. Die fünfte Anweisung ermöglicht es Rollen, eine Sicherheitsgruppe in einer zu erstellenVPC.

Anmerkung

Diese Richtlinie kann vom AWS CloudFormation Dienst nicht verwendet werden, um eine Sicherheitsgruppe mit den erforderlichen Tags zu erstellen. Wenn Sie die Bedingung für die Aktion ec2:CreateSecurityGroup entfernen, für die das Tag erforderlich ist, funktioniert die Richtlinie.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RevokeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:UpdateSecurityGroupRuleDescriptionsEgress", "ec2:RevokeSecurityGroupEgress", "ec2:DeleteSecurityGroup", "ec2:ModifySecurityGroupRules", "ec2:UpdateSecurityGroupRuleDescriptionsIngress" ], "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Stack": "test" } } }, { "Effect": "Allow", "Action": "ec2:CreateSecurityGroup", "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "aws:RequestTag/Stack": "test" }, "ForAllValues:StringEquals": { "aws:TagKeys": "Stack" } } }, { "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateSecurityGroup" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeSecurityGroupRules", "ec2:DescribeVpcs", "ec2:DescribeSecurityGroups" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:CreateSecurityGroup", "Resource": "arn:aws:ec2:*:*:vpc/*" } ] }

Damit Rollen die Sicherheitsgruppe ändern können, die einer Instance zugeordnet ist, fügen Sie Ihrer Richtlinie die ec2:ModifyInstanceAttribute-Aktion hinzu.

Um Rollen das Ändern von Sicherheitsgruppen für eine Netzwerkschnittstelle zu ermöglichen, fügen Sie der Richtlinie die ec2:ModifyNetworkInterfaceAttribute-Aktion hinzu.

Sicherheitsgruppenregeln verwalten

Die folgende Richtlinie gewährt Rollen die Berechtigung, alle Sicherheitsgruppen und Sicherheitsgruppenregeln anzuzeigen, Regeln für eingehende und ausgehende Nachrichten für bestimmte VPC Sicherheitsgruppen hinzuzufügen und zu entfernen und Regelbeschreibungen für die angegebenen Regeln zu ändern. VPC In der ersten Anweisung wird der ec2:Vpc Bedingungsschlüssel verwendet, um Berechtigungen auf ein bestimmtes Objekt zu beschränken. VPC

Die zweite Anweisung erteilt Rollen die Berechtigung zum Beschreiben aller Sicherheitsgruppen, Sicherheitsgruppenregeln und Markierungen. Auf diese Weise können Rollen Sicherheitsgruppenregeln anzeigen, um sie zu ändern.

{ "Version": "2012-10-17", "Statement":[{ "Effect":"Allow", "Action": [ "ec2:AuthorizeSecurityGroupIngress", "ec2:RevokeSecurityGroupIngress", "ec2:UpdateSecurityGroupRuleDescriptionsIngress", "ec2:AuthorizeSecurityGroupEgress", "ec2:RevokeSecurityGroupEgress", "ec2:UpdateSecurityGroupRuleDescriptionsEgress", "ec2:ModifySecurityGroupRules" ], "Resource": "arn:aws:ec2:region:account-id:security-group/*", "Condition": { "ArnEquals": { "ec2:Vpc": "arn:aws:ec2:region:account-id:vpc/vpc-id" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeSecurityGroups", "ec2:DescribeSecurityGroupRules", "ec2:DescribeTags" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:ModifySecurityGroupRules" ], "Resource": "arn:aws:ec2:region:account-id:security-group-rule/*" } ] }

Starten von Instances in einem bestimmten Subnetz

Mit der folgenden Richtlinie wird Rollen die Berechtigung zum Starten von Instances in einem bestimmten Subnetz sowie die Nutzung einer bestimmten Sicherheitsgruppe in der Anfrage gewährt. In der Richtlinie werden dazu die ARN für das Subnetz und die ARN für die Sicherheitsgruppe angegeben. Wenn Rollen versuchen, eine Instance in einem anderen Subnetz zu starten oder eine andere Sicherheitsgruppe zu verwenden, schlägt die Anfrage fehl, sofern Rollen nicht durch andere Richtlinien oder Anweisungen eine entsprechende Erlaubnis dafür gewährt wird.

Außerdem wird in der Richtlinie die Berechtigung zum Verwenden der Netzwerkschnittstellenressource gewährt. Beim Starten einer Instance in einem Subnetz wird mithilfe der Anfrage RunInstances standardmäßig eine primäre Netzwerkschnittstelle erstellt. Daher benötigt die Rolle die Berechtigung zum Erstellen dieser Ressource beim Starten der Instance.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:region::image/ami-*", "arn:aws:ec2:region:account:instance/*", "arn:aws:ec2:region:account:subnet/subnet-id", "arn:aws:ec2:region:account:network-interface/*", "arn:aws:ec2:region:account:volume/*", "arn:aws:ec2:region:account:key-pair/*", "arn:aws:ec2:region:account:security-group/sg-id" ] } ] }

Starten Sie Instances in einem bestimmten VPC

Die folgende Richtlinie gewährt Rollen die Erlaubnis, Instances in einem beliebigen Subnetz innerhalb eines bestimmten VPC Subnetzes zu starten. Hierfür wird ein Bedingungsschlüssel (ec2:Vpc) auf die Subnetzressource angewendet.

Die Richtlinie gewährt Rollen außerdem die Berechtigung, nur Instances zu startenAMIs, die das Tag "department=dev" verwenden.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "arn:aws:ec2:region:account-id:subnet/*", "Condition": { "ArnEquals": { "ec2:Vpc": "arn:aws:ec2:region:account-id:vpc/vpc-id" } } }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "arn:aws:ec2:region::image/ami-*", "Condition": { "StringEquals": { "ec2:ResourceTag/department": "dev" } } }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:region:account:instance/*", "arn:aws:ec2:region:account:volume/*", "arn:aws:ec2:region:account:network-interface/*", "arn:aws:ec2:region:account:key-pair/*", "arn:aws:ec2:region:account:security-group/*" ] } ] }

Weitere Beispiele für VPC Amazon-Richtlinien

Weitere IAM Beispielrichtlinien in Bezug auf Amazon finden Sie VPC in der folgenden Dokumentation: