AWS Database Migration Service Beispiele für identitätsbasierte Richtlinien - AWS Database Migration 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.

AWS Database Migration Service Beispiele für identitätsbasierte Richtlinien

IAM-Benutzer besitzen keine Berechtigungen zum Erstellen oder Ändern von AWS DMS -Ressourcen. 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 Benutzern und Rollen die Berechtigung gewähren, bestimmte API Operationen mit den angegebenen Ressourcen auszuführen, die sie benötigen. Der Administrator muss diese Richtlinien anschließend den IAM-Benutzern oder -Gruppen anfügen, die diese Berechtigungen benötigen.

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

Bewährte Methoden für Richtlinien

Identitätsbasierte Richtlinien legen fest, ob jemand AWS DMS Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder sie 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. IAM Access 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 im IAMBenutzerhandbuch unter Überprüfen von Richtlinien mit IAM Access Analyzer.

  • 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 Sicherer API Zugriff mit MFA im IAMBenutzerhandbuch.

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

Verwenden der AWS DMS -Konsole

Die folgende Richtlinie gewährt Ihnen Zugriff auf AWS DMS, einschließlich der AWS DMS Konsole, und legt auch Berechtigungen für bestimmte Aktionen fest, die von anderen Amazon-Diensten wie Amazon benötigt werdenEC2.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dms:*", "Resource": "arn:aws:dms:region:account:resourcetype/id" }, { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:DescribeKey" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole", "iam:CreateRole", "iam:AttachRolePolicy" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }, { "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "ec2:DescribeInternetGateways", "ec2:DescribeAvailabilityZones", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:ModifyNetworkInterfaceAttribute", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }, { "Effect": "Allow", "Action": [ "cloudwatch:Get*", "cloudwatch:List*" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }, { "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:FilterLogEvents", "logs:GetLogEvents" ], "Resource": "arn:aws:service:region:account:resourcetype/id" } ] }

Eine Aufschlüsselung dieser Berechtigungen kann Ihnen helfen, besser zu verstehen, warum alle für die Verwendung der Konsole erforderlichen Berechtigungen erforderlich sind.

Der folgende Abschnitt ist erforderlich, damit die Benutzer berechtigt sind, ihre verfügbaren AWS KMS -Schlüssel und den Alias für die Anzeige in der Konsole aufzulisten. Dieser Eintrag ist nicht erforderlich, wenn Sie den Amazon-Ressourcennamen (ARN) für den KMS Schlüssel kennen und nur den AWS Command Line Interface (AWS CLI) verwenden.

{ "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:DescribeKey" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }

Der folgende Abschnitt ist für bestimmte Endpunkttypen erforderlich, bei denen eine Rolle ARN zusammen mit dem Endpunkt übergeben werden muss. Wenn die erforderlichen AWS DMS Rollen nicht im Voraus erstellt wurden, kann die AWS DMS Konsole die Rolle außerdem erstellen. Wenn alle Rollen vorab konfiguriert werden, muss dies innerhalb von iam:GetRole und iam:PassRole geschehen. Weitere Informationen zu Rollen finden Sie unter Die IAM Rollen für die Verwendung mit erstellen AWS DMS.

{ "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole", "iam:CreateRole", "iam:AttachRolePolicy" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }

Der folgende Abschnitt ist AWS DMS erforderlich, da die EC2 Amazon-Instance erstellt und das Netzwerk für die erstellte Replikations-Instance konfiguriert werden muss. Diese Ressourcen sind im Konto des Kunden vorhanden, deshalb muss es möglich sein, diese Aktionen im Namen des Kunden auszuführen.

{ "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "ec2:DescribeInternetGateways", "ec2:DescribeAvailabilityZones", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:ModifyNetworkInterfaceAttribute", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }

Der folgende Abschnitt ist erforderlich, damit der Benutzer Replikations-Instance-Metriken anzeigen kann.

{ "Effect": "Allow", "Action": [ "cloudwatch:Get*", "cloudwatch:List*" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }

Dieser Abschnitt ist erforderlich, damit der Benutzer Replikationsprotokolle anzeigen kann.

{ "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:FilterLogEvents", "logs:GetLogEvents" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }

Wenn Sie die AWS DMS Konsole, die AWS Command Line Interface (AWS CLI) oder die AWS DMS API für Ihre Migration verwenden, müssen Sie Ihrem Konto mehrere Rollen hinzufügen. Weitere Informationen zum Hinzufügen dieser Rollen finden Sie unter Die IAM Rollen für die Verwendung mit erstellen AWS DMS.

Weitere Informationen zu den Voraussetzungen für die Verwendung dieser Richtlinie für den Zugriff AWS DMS finden Sie unterIAMFür die Verwendung sind die erforderlichen Berechtigungen erforderlich AWS DMS.

Gewähren der Berechtigung zur Anzeige der eigenen Berechtigungen für Benutzer

In diesem Beispiel wird gezeigt, wie Sie eine Richtlinie erstellen, die IAM-Benutzern die Berechtigung zum Anzeigen der Inline-Richtlinien und verwalteten Richtlinien gewährt, die ihrer Benutzeridentität angefügt sind. Diese Richtlinie umfasst Berechtigungen zum Ausführen dieser Aktion auf der Konsole oder programmgesteuert mithilfe von oder. AWS CLI AWS API

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Zugreifen auf einen Amazon-S3-Bucket

AWS DMSverwendet Amazon S3 S3-Buckets als Zwischenspeicher für die Datenbankmigration. In der Regel verwaltet AWS DMS Standard-S3-Buckets für diesen Zweck. In bestimmten Fällen, insbesondere wenn Sie das AWS CLI oder das verwenden AWS DMSAPI, AWS DMS können Sie jedoch stattdessen Ihren eigenen S3-Bucket angeben. Sie können beispielsweise einen eigenen S3-Bucket für die Migration von Daten zu einem Amazon-Redshift-Zielendpunkt angeben. In diesem Fall müssen Sie eine Rolle mit Berechtigungen erstellen, die auf der AWS-managed AmazonDMSRedshiftS3Role Policy basieren.

Das folgende Beispiel zeigt eine Version der Richtlinie AmazonDMSRedshiftS3Role. Damit können AWS DMS Sie einem IAM Benutzer in Ihrem AWS Konto Zugriff auf einen Ihrer Amazon S3 S3-Buckets gewähren. Außerdem kann der Benutzer Objekte hinzufügen, aktualisieren und löschen.

Zusätzlich zum Erteilen der Berechtigungen s3:PutObject, s3:GetObject und s3:DeleteObject für den Benutzer, gewährt die Richtlinie die Berechtigungen s3:ListAllMyBuckets, s3:GetBucketLocation und s3:ListBucket. Dies sind die zusätzlichen Berechtigungen, die von der Konsole benötigt werden. Andere Berechtigungen ermöglichen AWS DMS das Verwalten des Bucket-Lebenszyklus. Außerdem ist die s3:GetObjectAcl-Aktion erforderlich, um Objekte kopieren zu können.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:CreateBucket", "s3:ListBucket", "s3:DeleteBucket", "s3:GetBucketLocation", "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:GetObjectVersion", "s3:GetBucketPolicy", "s3:PutBucketPolicy", "s3:GetBucketAcl", "s3:PutBucketVersioning", "s3:GetBucketVersioning", "s3:PutLifecycleConfiguration", "s3:GetLifecycleConfiguration", "s3:DeleteBucketPolicy" ], "Resource": "arn:aws:s3:::dms-*" } ] }

Weitere Informationen zum Erstellen einer Rolle auf der Grundlage dieser Richtlinie finden Sie unter Einstellungen von Amazon-S3-Buckets.

Zugreifen auf AWS DMS -Ressourcen basierend auf Tags

Sie können in Ihrer identitätsbasierten Richtlinie Bedingungen für die Steuerung des Zugriffs auf AWS DMS -Ressourcen auf der Basis von Tags verwenden. In diesem Beispiel wird gezeigt, wie Sie eine Richtlinie erstellen können, die den Zugriff auf alle AWS DMS-Endpunkte ermöglicht. Die Berechtigung wird jedoch nur gewährt, wenn der Wert des Endpunktdatenbank-Tags Owner der Name des Benutzers ist.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dms:*", "Resource": "arn:aws:dms:*:*:endpoint/*", "Condition": { "StringEquals": {"dms:endpoint-tag/Owner": "${aws:username}"} } } ] }

Sie können diese Richtlinie den IAM-Benutzern in Ihrem Konto zuweisen. Wenn ein benannter Benutzer richard-roe versucht, auf einen AWS DMS Endpunkt zuzugreifen, muss die Endpunktdatenbank mit Owner=richard-roe oder owner=richard-roe gekennzeichnet werden. Andernfalls wird diesem Benutzer der Zugriff verweigert. Der Tag-Schlüssel Owner der Bedingung stimmt sowohl mit Owner als auch mit owner überein, da die Namen von Bedingungsschlüsseln nicht zwischen Groß- und Kleinschreibung unterscheiden. Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONRichtlinienelemente: Bedingung.