Verwendung identitätsbasierter Richtlinien (IAMRichtlinien) für Amazon Route 53 - Amazon Route 53

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.

Verwendung identitätsbasierter Richtlinien (IAMRichtlinien) für Amazon Route 53

Dieses Thema enthält Beispiele für identitätsbasierte Richtlinien, die zeigen, wie ein Kontoadministrator Berechtigungsrichtlinien an IAM Identitäten anhängen und so Berechtigungen zur Ausführung von Vorgängen auf Amazon Route 53-Ressourcen gewähren kann.

Wichtig

Wir empfehlen Ihnen, zunächst die einführenden Themen zu lesen, in denen die Grundkonzepte und Optionen zum Verwalten des Zugriffs auf Ihre Route-53-Ressourcen erläutert werden. Weitere Informationen finden Sie unter Übersicht zur Verwaltung der Zugriffsberechtigungen für Amazon-Route-53-Ressourcen.

Anmerkung

Bei der Gewährung des Zugriffs VPC müssen die gehostete Zone und Amazon zu derselben Partition gehören. Eine Partition ist eine Gruppe von AWS-Regionen. Jede AWS-Konto ist auf eine Partition beschränkt.

Im Folgenden werden die unterstützten Partitionen angezeigt:

  • aws - AWS-Regionen

  • aws-cn – Chinesiche Regionen

  • aws-us-gov - AWS GovCloud (US) Region

Weitere Informationen finden Sie unter Zugriffsverwaltung und Amazon-Route-53-Endpunkte und Kontingente in der Allgemeinen Referenz zu AWS .

Das folgende Beispiel zeigt eine Berechtigungsrichtlinie. Der Abschnitt Sid (die Anweisungs-ID) ist optional:

{ "Version": "2012-10-17", "Statement": [ { "Sid" : "AllowPublicHostedZonePermissions", "Effect": "Allow", "Action": [ "route53:CreateHostedZone", "route53:UpdateHostedZoneComment", "route53:GetHostedZone", "route53:ListHostedZones", "route53:DeleteHostedZone", "route53:ChangeResourceRecordSets", "route53:ListResourceRecordSets", "route53:GetHostedZoneCount", "route53:ListHostedZonesByName" ], "Resource": "*" }, { "Sid" : "AllowHealthCheckPermissions", "Effect": "Allow", "Action": [ "route53:CreateHealthCheck", "route53:UpdateHealthCheck", "route53:GetHealthCheck", "route53:ListHealthChecks", "route53:DeleteHealthCheck", "route53:GetCheckerIpRanges", "route53:GetHealthCheckCount", "route53:GetHealthCheckStatus", "route53:GetHealthCheckLastFailureReason" ], "Resource": "*" } ] }

Die Richtlinie enthält zwei Anweisungen:

  • Die erste Anweisung gewährt Berechtigungen für die Aktionen, die zum Erstellen und Verwalten von öffentlichen gehosteten Zonen und deren Datensätzen erforderlich sind. Das Platzhalterzeichen (*) im Amazon-Ressourcennamen (ARN) gewährt Zugriff auf alle Hosting-Zonen, die dem aktuellen AWS Konto gehören.

  • Die zweite Anweisung erteilt Berechtigungen für alle Aktionen, die zum Erstellen und Verwalten von Zustandsprüfungen erforderlich sind.

Eine Liste der Aktionen und die AngabenARN, die Sie angeben, um die Erlaubnis zur Verwendung der einzelnen Aktionen zu erteilen oder zu verweigern, finden Sie unterAmazon Route API 53-Berechtigungen: Referenz zu Aktionen, Ressourcen und Bedingungen.

Erforderliche Berechtigungen zur Verwendung der Amazon-Route-53-Konsole

Um Vollzugriff auf die Amazon-Route-53-Konsole zu gewähren, gewähren Sie die Berechtigungen in der folgenden Berechtigungsrichtlinie:

{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "route53:*", "route53domains:*", "tag:*", "ssm:GetParametersByPath", "cloudfront:ListDistributions", "elasticloadbalancing:DescribeLoadBalancers", "elasticbeanstalk:DescribeEnvironments", "s3:ListAllamzn-s3-demo-bucket", "s3:GetBucketLocation", "s3:GetBucketWebsite", "ec2:DescribeRegions", "ec2:DescribeVpcs", "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DescribeAvailabilityZones", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:ModifyNetworkInterfaceAttribute", "sns:ListTopics", "sns:ListSubscriptionsByTopic", "sns:CreateTopic", "kms:ListAliases", "kms:DescribeKey", "kms:CreateKey", "kms:CreateAlias", "kms:Sign", "cloudwatch:DescribeAlarms", "cloudwatch:PutMetricAlarm", "cloudwatch:DeleteAlarms", "cloudwatch:GetMetricStatistics" ], "Resource":"*" }, { "Effect": "Allow", "Action": "apigateway:GET", "Resource": "arn:aws:apigateway:*::/domainnames" } ] }

Gründe, warum die Berechtigungen erforderlich sind

route53:*

Ermöglicht die Durchführung aller Route-53-Aktionen, mit Ausnahme der folgenden Aktionen:

  • Erstellen und aktualisieren Sie Aliaseinträge, für die der Wert von Alias Target eine CloudFront Distribution, ein Elastic Load Balancing Load Balancer, eine Elastic Beanstalk Beanstalk-Umgebung oder ein Amazon S3 S3-Bucket ist. (Mit diesen Berechtigungen können Sie Alias-Datensätze erstellen, für die der Wert für Alias Target ein anderer Datensatz in der gleichen gehosteten Zone ist.)

  • Arbeiten mit privaten gehosteten Zonen

  • Arbeiten mit Domänen

  • Alarme erstellen, löschen und anzeigen. CloudWatch

  • Rendern Sie CloudWatch Metriken in der Route 53-Konsole.

route53domains:*

Ermöglicht Ihnen das Arbeiten mit Domänen.

Wichtig

Wenn Sie route53-Aktionen einzeln auflisten, müssen Sie route53:CreateHostedZone für das Arbeiten mit Domänen angeben. Wenn Sie eine Domäne registrieren, wird gleichzeitig eine gehostete Zone erstellt. Also erfordert eine Richtlinie, die Berechtigungen zur Registrierung von Domänen enthält, auch eine Berechtigung zum Erstellen von gehosteten Zonen.

Bei der Domänenregistrierung wird die Erteilung oder Ablehnung von Berechtigungen für einzelne Ressourcen von Route 53 nicht unterstützt.

route53resolver:*

Ermöglicht Ihnen das Arbeiten mit Route 53 Resolver.

ssm:GetParametersByPath

Ermöglicht das Abrufen öffentlich verfügbarer Regionen, wenn Sie neue Aliaseinträge, private gehostete Zonen und Zustandsprüfungen erstellen.

cloudfront:ListDistributions

Ermöglicht das Erstellen und Aktualisieren von Alias-Datensätzen, für die der Wert von Alias Target eine CloudFront Verteilung ist.

Diese Berechtigungen sind nicht erforderlich, wenn Sie die Route-53-Konsole nicht verwenden. Route 53 verwendet sie nur, um eine Liste der Verteilungen abzurufen und in der Konsole anzuzeigen.

elasticloadbalancing:DescribeLoadBalancers

Ermöglicht das Erstellen und Aktualisieren von Aliasdatensätzen, für die der Wert von Alias Target ein Load ELB Balancer ist.

Diese Berechtigungen sind nicht erforderlich, wenn Sie die Route-53-Konsole nicht verwenden. Route 53 verwendet sie nur, um eine Liste der Load Balancer abzurufen und in der Konsole anzuzeigen.

elasticbeanstalk:DescribeEnvironments

Ermöglicht das Erstellen und Aktualisieren von Alias-Datensätzen, für die der Wert für Aliasziel eine Elastic-Beanstalk-Umgebung ist.

Diese Berechtigungen sind nicht erforderlich, wenn Sie die Route-53-Konsole nicht verwenden. Route 53 verwendet sie nur, um eine Liste der Umgebungen abzurufen und in der Konsole anzuzeigen.

s3:ListAllamzn-s3-demo-bucket, s3:GetBucketLocation und s3:GetBucketWebsite

Ermöglicht das Erstellen und Aktualisieren von Alias-Datensätzen, für die der Wert für Aliasziel ein Amazon-S3-Bucket ist. (Sie können einen Alias für einen Amazon-S3-Bucket nur erstellen, wenn der Bucket als Website-Endpunkt konfiguriert ist; s3:GetBucketWebsite ruft die benötigten Konfigurationsinformationen ab.)

Diese Berechtigungen sind nicht erforderlich, wenn Sie die Route-53-Konsole nicht verwenden. Route 53 verwendet sie nur, um eine Liste der Buckets abzurufen und in der Konsole anzuzeigen.

ec2:DescribeVpcs und ec2:DescribeRegions

Ermöglicht das Arbeiten mit privaten gehosteten Zonen.

Alle aufgelisteten ec2-Berechtigungen

Ermöglicht Ihnen die Arbeit mit Route 53 Resolver.

sns:ListTopics, sns:ListSubscriptionsByTopic, sns:CreateTopic, cloudwatch:DescribeAlarms, cloudwatch:PutMetricAlarm, cloudwatch:DeleteAlarms

Ermöglicht das Erstellen, Löschen und Anzeigen von CloudWatch Alarmen.

cloudwatch:GetMetricStatistics

Ermöglicht die Erstellung von CloudWatch metrischen Zustandsprüfungen.

Diese Berechtigungen sind nicht erforderlich, wenn Sie die Route-53-Konsole nicht verwenden. Route 53 verwendet sie nur, um Statistiken abzurufen und in der Konsole anzuzeigen.

apigateway:GET

Ermöglicht das Erstellen und Aktualisieren von Alias-Datensätzen, für die der Wert von Alias Target ein Amazon API Gateway istAPI.

Diese Berechtigung ist nicht erforderlich, wenn Sie die Route-53-Konsole nicht verwenden. Route 53 verwendet es nur, um eine Liste von Dateien abzurufenAPIs, die in der Konsole angezeigt werden sollen.

kms:*

Ermöglicht es Ihnen, mit AWS KMS zu arbeiten, um das DNSSEC Signieren zu aktivieren.

Beispielberechtigungen für einen Domänendatensatzbesitzer

Mithilfe von Berechtigungen für Ressourcendatensätze können Sie detaillierte Berechtigungen festlegen, die einschränken, was der AWS Benutzer aktualisieren oder ändern kann. Weitere Informationen finden Sie unter Verwendung von IAM Richtlinienbedingungen für eine differenzierte Zugriffskontrolle.

In einigen Szenarien kann ein Besitzer einer gehosteten Zone für die Gesamtverwaltung der gehosteten Zone verantwortlich sein, während eine andere Person in der Organisation für eine Teilmenge dieser Aufgaben verantwortlich ist. Ein Besitzer einer gehosteten Zone, der das DNSSEC Signieren aktiviert hat, möchte möglicherweise eine IAM Richtlinie erstellen, die unter anderem die Erlaubnis für eine andere Person beinhaltet, Resource Set Records (RRs) in der Hosting-Zone hinzuzufügen und zu löschen. Die spezifischen Berechtigungen, die ein Besitzer einer gehosteten Zone für einen Datensatzbesitzer oder andere Personen aktiviert, hängen von der Richtlinie ihrer Organisation ab.

Im Folgenden finden Sie ein Beispiel IAM für eine Richtlinie, die es einem Datensatzbesitzer ermöglichtRRs, Änderungen an Verkehrsrichtlinien und Integritätsprüfungen vorzunehmen. Einem Datensatzbesitzer mit dieser Richtlinie ist es nicht gestattet, Vorgänge auf Zonenebene auszuführen, z. B. eine Zone zu erstellen oder zu löschen, die Abfrageprotokollierung zu aktivieren oder zu deaktivieren, einen wiederverwendbaren Delegierungssatz zu erstellen oder zu löschen oder Einstellungen zu ändern. DNSSEC

{ "Sid": "Do not allow zone-level modification ", "Effect": "Allow", "Action": [ "route53:ChangeResourceRecordSets", "route53:CreateTrafficPolicy", "route53:DeleteTrafficPolicy", "route53:CreateTrafficPolicyInstance", "route53:CreateTrafficPolicyVersion", "route53:UpdateTrafficPolicyInstance", "route53:UpdateTrafficPolicyComment", "route53:DeleteTrafficPolicyInstance", "route53:CreateHealthCheck", "route53:UpdateHealthCheck", "route53:DeleteHealthCheck", "route53:List*", "route53:Get*" ], "Resource": [ "*" ] }

Für das Signieren sind vom Kunden verwaltete Schlüsselberechtigungen für Route 53 erforderlich DNSSEC

Wenn Sie das DNSSEC Signieren für Route 53 aktivieren, erstellt Route 53 einen Schlüssel für die Schlüsselsignatur (KSK), der auf einem vom Kunden verwalteten Schlüssel in AWS Key Management Service (AWS KMS) basiert. Sie können einen vorhandenen, vom Kunden verwalteten Schlüssel verwenden, der das DNSSEC Signieren unterstützt, oder einen neuen Schlüssel erstellen. Route 53 muss berechtigt sein, auf Ihren vom Kunden verwalteten Schlüssel zuzugreifen, damit sie den KSK für Sie erstellen kann.

Um Route 53 für den Zugriff auf Ihren vom Kunden verwalteten Schlüssel zu aktivieren, stellen Sie sicher, dass die vom Kunden verwaltete Schlüsselrichtlinie die folgenden Anweisungen enthält:

{ "Sid": "Allow Route 53 DNSSEC Service", "Effect": "Allow", "Principal": { "Service": "dnssec-route53.amazonaws.com" }, "Action": ["kms:DescribeKey", "kms:GetPublicKey", "kms:Sign"], "Resource": "*" }, { "Sid": "Allow Route 53 DNSSEC to CreateGrant", "Effect": "Allow", "Principal": { "Service": "dnssec-route53.amazonaws.com" }, "Action": ["kms:CreateGrant"], "Resource": "*", "Condition": { "Bool": { "kms:GrantIsForAWSResource": true } } }

Das Confused-Deputy-Problem ist ein Sicherheitsproblem, bei dem eine juristische Stelle, die nicht über die Berechtigung zum Ausführen einer Aktion verfügt, eine privilegiertere juristische Stelle zwingen kann, sie auszuführen. Um Sie AWS KMS davor zu schützen, können Sie optional die Berechtigungen, die ein Dienst für eine Ressource hat, in einer ressourcenbasierten Richtlinie einschränken, indem Sie eine Kombination aus aws:SourceAccount und aws:SourceArn Bedingungen (beide oder eine) angeben. aws:SourceAccountist eine AWS Konto-ID eines Besitzers einer gehosteten Zone. aws:SourceArngehört zu ARN einer gehosteten Zone.

Im Folgenden finden Sie zwei Beispiele für Berechtigungen, die Sie hinzufügen können:

{ "Sid": "Allow Route 53 DNSSEC Service", … "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnEquals": { "aws:SourceArn": "arn:aws:route53:::hostedzone/HOSTED_ZONE_ID" } } },

- Oder -

{ "Sid": "Allow Route 53 DNSSEC Service", … "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": ["1111-2222-3333","4444-5555-6666"] }, "ArnLike": { "aws:SourceArn": "arn:aws:route53:::hostedzone/*" } } },

Weitere Informationen finden Sie unter Das Problem mit dem verwirrten Stellvertreter im IAMBenutzerhandbuch.

Beispiele für vom Kunden verwaltete Richtlinien

Sie können Ihre eigenen benutzerdefinierten IAM Richtlinien erstellen, um Berechtigungen für Route 53-Aktionen zuzulassen. Sie können diese benutzerdefinierten Richtlinien den IAM Gruppen zuordnen, für die die angegebenen Berechtigungen erforderlich sind. Diese Richtlinien funktionieren, wenn Sie die Route 53 API AWS SDKs, die oder die verwenden AWS CLI. Die folgenden Beispiele zeigen Berechtigungen für einige häufige Anwendungsfälle. Weitere Informationen zu der Richtlinie, die Benutzern Vollzugriff auf Route 53 gewährt, finden Sie unter Erforderliche Berechtigungen zur Verwendung der Amazon-Route-53-Konsole.

Beispiel 1: Lesezugriff auf alle gehosteten Zonen gewähren

Die folgende Berechtigungsrichtlinie gewährt dem Benutzer Berechtigungen zum Auflisten aller gehosteten Zonen und zum Anzeigen aller Datensätze in einer gehosteten Zone.

{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "route53:GetHostedZone", "route53:ListResourceRecordSets" ], "Resource":"*" }, { "Effect":"Allow", "Action":["route53:ListHostedZones"], "Resource":"*" } ] }

Beispiel 2: Erstellen und Löschen gehosteter Zonen zulassen

Die folgende Berechtigungsrichtlinie erlaubt es Benutzern, gehostete Zonen zu erstellen und zu löschen und den Fortschritt der Änderung zu verfolgen.

{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action":["route53:CreateHostedZone"], "Resource":"*" }, { "Effect":"Allow", "Action":["route53:DeleteHostedZone"], "Resource":"*" }, { "Effect":"Allow", "Action":["route53:GetChange"], "Resource":"*" } ] }

Beispiel 3: Vollzugriff auf alle Domänen erlauben (nur öffentliche gehostete Zonen)

Die folgende Berechtigungsrichtlinie erlaubt es Benutzern, alle Aktionen für die Domänenregistrierung durchzuführen (z. B. Berechtigungen zum Registrieren von Domänen und Erstellen gehosteter Zonen).

{ "Version": "2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "route53domains:*", "route53:CreateHostedZone" ], "Resource":"*" } ] }

Wenn Sie eine Domäne registrieren, wird gleichzeitig eine gehostete Zone erstellt. Also erfordert eine Richtlinie, die Berechtigungen zur Registrierung von Domänen enthält, auch Berechtigungen zum Erstellen von gehosteten Zonen. (Bei der Domänenregistrierung wird die Erteilung von Berechtigungen für einzelne Ressourcen von Route 53 nicht unterstützt.)

Weitere Informationen zu den Berechtigungen, die für das Arbeiten mit privaten gehosteten Zonen erforderlich sind, finden Sie unter Erforderliche Berechtigungen zur Verwendung der Amazon-Route-53-Konsole.

Beispiel 4: Erstellen von eingehenden und ausgehenden Route-53-Resolver-Endpunkten zulassen

Mit der folgenden Berechtigungsrichtlinie können Benutzer die Route-53-Konsole verwenden, um eingehende und ausgehende Resolver-Endpunkte zu erstellen.

Einige dieser Berechtigungen sind nur zum Erstellen von Endpunkten in der Konsole erforderlich. Sie können diese Berechtigungen weglassen, wenn Sie Berechtigungen nur zum programmgesteuerten Erstellen eingehender und ausgehender Endpunkte erteilen möchten:

  • Mit route53resolver:ListResolverEndpoints können Benutzer die Liste der eingehenden oder ausgehenden Endpunkte anzeigen, damit sie überprüfen können, ob ein Endpunkt erstellt wurde.

  • DescribeAvailabilityZones ist erforderlich, um eine Liste der Availability Zones anzuzeigen.

  • DescribeVpcsist erforderlich, um eine Liste von anzuzeigenVPCs.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "route53resolver:CreateResolverEndpoint", "route53resolver:ListResolverEndpoints", "ec2:CreateNetworkInterface", "ec2:DescribeAvailabilityZones", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs" ], "Resource": "*" } ] }