Berechtigungsrichtlinien zum Erstellen, Ändern und Löschen von Ressourcen in Amazon RDS - Amazon Relational Database Service

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.

Berechtigungsrichtlinien zum Erstellen, Ändern und Löschen von Ressourcen in Amazon RDS

Die folgenden Abschnitte enthalten Beispiele für Berechtigungsrichtlinien, die den Zugriff auf Ressourcen gewähren und einschränken:

Erlauben Sie einem Benutzer, DB-Instances in einem AWS Konto zu erstellen

Im Folgenden finden Sie ein Beispiel für eine Richtlinie, die es dem Konto mit der ID ermöglicht, DB-Instances für Ihr AWS Konto 123456789012 zu erstellen. Die Richtlinie setzt voraus, dass der Name der DB-Instance mit beginn test. Die neue DB-Instance muss auch die MySQL-Datenbank-Engine und die DB-Instance-Klasse db.t2.micro verwenden. Zusätzlich muss die neue DB-Instance eine Optionsgruppe und eine DB-Parametergruppe verwenden, die mit default beginnt und die Subnetzgruppe default verwendet.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateDBInstanceOnly", "Effect": "Allow", "Action": [ "rds:CreateDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:db:test*", "arn:aws:rds:*:123456789012:og:default*", "arn:aws:rds:*:123456789012:pg:default*", "arn:aws:rds:*:123456789012:subgrp:default" ], "Condition": { "StringEquals": { "rds:DatabaseEngine": "mysql", "rds:DatabaseClass": "db.t2.micro" } } } ] }

Die Richtlinie ist ein einzelnes Statement, das die folgenden Berechtigungen für den -Benutzer bestimmt:

  • Die Richtlinie ermöglicht es dem Konto, mithilfe des Vorgangs Create DBInstance API eine DB-Instance zu erstellen (dies gilt auch für den create-db-instance AWS CLI Befehl und den AWS Management Console).

  • Das Element Resource gibt an, dass der Benutzer auf oder mit Ressourcen Aktionen ausführen kann. Sie geben Ressourcen über einen Amazon Resources Name (ARN) an. Dieser ARN umfasst den Namen des Dienstes, zu dem die Ressource gehört (rds), die AWS Region (*gibt in diesem Beispiel eine beliebige Region an), die AWS Kontonummer (123456789012ist in diesem Beispiel die Kontonummer) und den Ressourcentyp. Weitere Informationen zum Erstellen finden ARNs Sie unterAmazon-Ressourcennamen (ARNs) in Amazon RDS.

    Das Resource-Element im Beispiel gibt für den Benutzer die folgenden richtlinienbezogenen Einschränkungen für die Ressourcen an:

    • Die DB-Instance-Kennung für die neue DB-Instance muss mit test beginnen (zum Beispiel testCustomerData1, test-region2-data).

    • Die Optionsgruppe für die neue DB-Instance muss mit beginne default.

    • Die DB-Parametergruppe für die neue DB-Instance muss mit beginne default.

    • Die Subnetzgruppe für die neue DB-Instance muss mit default beginnen.

  • Das Condition-Element gibt an, dass die DB-Engine MySQL sein muss und die DB-Instance-Klasse db.t2.micro sein muss. Das Condition-Element bestimmt die Bedingungen, wann eine Richtlinie wirksam sein soll. Sie können zusätzliche Berechtigungen oder Einschränkungen hinzufügen, indem Sie das Condition-Element verwenden. Weitere Informationen zur Angabe von Bedingungen finden Sie unter Schlüssel zu den Versicherungsbedingungen für Amazon RDS. Dieses Beispiel zeigt die Bedingungen rds:DatabaseEngine und rds:DatabaseClass. Informationen zu den gültigen Bedingungswerten für rds:DatabaseEngine finden Sie in der Liste unter dem Engine Parameter in Create DBInstance. Informationen zu den gültigen Bedingungswerten für rds:DatabaseClass finden Sie unter Unterstützte DB-Engines für DB-Instance-Klassen .

Das Element Principal ist in der Richtlinie nicht angegeben, da in identitätsbasierten Richtlinien die Angabe des Prinzipals als Empfänger der Berechtigung nicht erforderlich ist. Wenn Sie einem Benutzer eine Richtlinie zuweisen, ist der Benutzer automatisch der Prinzipal. Wird die Berechtigungsrichtlinie einer IAM-Rolle zugewiesen, erhält der in der Vertrauensrichtlinie der Rolle angegebene Prinzipal die Berechtigungen.

Um eine Liste von Amazon-RDS-Aktionen finden Sie unter Von Amazon RDS definierte Aktionen in der Service-Autorisierungs-Referenz

Einem Benutzer eine beliebige Beschreibungsaktion für eine beliebige RDS-Ressource erlauben

Die folgende Berechtigungsrichtlinie gewährt Berechtigungen für einen Benutzer, alle Aktionen auszuführen, die mit beginne Describe. Diese Aktionen zeigen Informationen zu einer RDS-Ressource, z. B. eine DB-Instance. Das Platzhalterzeichen (*) im Resource-Element zeigt an, dass die Aktionen für alle Amazon RDS-Ressourcen erlaubt sind, die dem Konto gehören.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRDSDescribe", "Effect": "Allow", "Action": "rds:Describe*", "Resource": "*" } ] }

Einem Benutzer erlauben, eine DB-Instance zu erstellen, die spezifische DB-Parametergruppe und Subnetzgruppe verwendet.

Die folgenden Berechtigungsrichtlinien erteilen einem Benutzer die Erlaubnis, ausschließlich eine DB-Instance mit der DB-Parametergruppe mydbpg und der DB-Subnetzgruppe mydbsubnetgroup zu erstellen.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "rds:CreateDBInstance", "Resource": [ "arn:aws:rds:*:*:pg:mydbpg", "arn:aws:rds:*:*:subgrp:mydbsubnetgroup" ] } ] }

Erteilen von Berechtigungen für Aktionen in einer Ressource mit einem bestimmten Tag und zwei verschiedenen Tag-Werten

Sie können in Ihrer identitätsbasierten Richtlinie Bedingungen für die Steuerung des Zugriffs auf Amazon RDS-Ressourcen auf der Basis von Tags verwenden. Die folgende Richtlinie erteilt die Berechtigung, die API-Operation CreateDBSnapshot auf DB-Instances durchzuführen, bei denen das Tag stage entweder auf development oder test festgelegt ist.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowAnySnapshotName", "Effect":"Allow", "Action":[ "rds:CreateDBSnapshot" ], "Resource":"arn:aws:rds:*:123456789012:snapshot:*" }, { "Sid":"AllowDevTestToCreateSnapshot", "Effect":"Allow", "Action":[ "rds:CreateDBSnapshot" ], "Resource":"arn:aws:rds:*:123456789012:db:*", "Condition":{ "StringEquals":{ "rds:db-tag/stage":[ "development", "test" ] } } } ] }

Die folgende Richtlinie erteilt die Berechtigung, die API-Operation ModifyDBInstance auf DB-Instances durchzuführen, bei denen das Tag stage entweder auf development oder test festgelegt ist.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowChangingParameterOptionSecurityGroups", "Effect":"Allow", "Action":[ "rds:ModifyDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:pg:*", "arn:aws:rds:*:123456789012:secgrp:*", "arn:aws:rds:*:123456789012:og:*" ] }, { "Sid":"AllowDevTestToModifyInstance", "Effect":"Allow", "Action":[ "rds:ModifyDBInstance" ], "Resource":"arn:aws:rds:*:123456789012:db:*", "Condition":{ "StringEquals":{ "rds:db-tag/stage":[ "development", "test" ] } } } ] }

Verhindern, dass ein Benutzer eine DB-Instance löscht

Die folgenden Berechtigungsrichtlinien erteilen Berechtigungen, um einen Benutzer davon abzuhalten, eine bestimmte DB-Instance zu löschen. Beispielsweise möchten Sie jedem Benutzer, der kein Administrator ist, verbieten, Ihre Produktions-DB-Instances zu löschen.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyDelete1", "Effect": "Deny", "Action": "rds:DeleteDBInstance", "Resource": "arn:aws:rds:us-west-2:123456789012:db:my-mysql-instance" } ] }

Verweigern des gesamten Zugriffs auf eine Ressource

Sie können den Zugriff auf eine Ressource explizit verweigern. Verweigerungsrichtlinien haben Vorrang vor Zulassungsrichtlinien. Die folgende Richtlinie verweigert einem Benutzer explizit die Möglichkeit, eine Ressource zu verwalten:

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "rds:*", "Resource": "arn:aws:rds:us-east-1:123456789012:db:mydb" } ] }