

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
<a name="security_iam_id-based-policy-examples"></a>

IAM-Benutzer besitzen keine Berechtigungen zum Erstellen oder Ändern von AWS DMS -Ressourcen. Sie können auch keine Aufgaben mithilfe der AWS-Managementkonsole, AWS CLI, oder AWS API ausführen. Ein IAM-Administrator muss IAM-Richtlinien erstellen, die Benutzern und Rollen die Berechtigung zum Ausführen bestimmter API-Operationen für die angegebenen Ressourcen gewähren, die diese benötigen. Der Administrator muss diese Richtlinien anschließend den IAM-Benutzern oder -Gruppen anfügen, die diese Berechtigungen benötigen.

Informationen dazu, wie Sie unter Verwendung dieser beispielhaften JSON-Richtliniendokumente eine identitätsbasierte IAM-Richtlinie erstellen, finden Sie unter [Erstellen von Richtlinien auf der JSON-Registerkarte](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor) im *IAM-Benutzerhandbuch*.

**Topics**
+ [Best Practices für Richtlinien](#security_iam_service-with-iam-policy-best-practices)
+ [Verwendung der AWS DMS Konsole](#security_iam_id-based-policy-examples-console)
+ [Gewähren der Berechtigung zur Anzeige der eigenen Berechtigungen für Benutzer](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Zugreifen auf einen Amazon-S3-Bucket](#security_iam_id-based-policy-examples-access-one-bucket)
+ [Zugriff AWS DMS Ressourcen, die auf Stichwörtern basieren](#security_iam_id-based-policy-examples-access-resources-tags)

## Best Practices für Richtlinien
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Identity-based Richtlinien legen fest, ob jemand AWS DMS Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder löschen kann. Dies kann zusätzliche Kosten für Ihr verursachen AWS-Konto. Wenn du identitätsbasierte Richtlinien erstellst oder bearbeitest, befolge diese Richtlinien und Empfehlungen:
+ **Beginnen Sie mit AWS verwalteten Richtlinien und wechseln Sie zu Berechtigungen mit 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 unter [Von AWS verwaltete Richtlinien](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) oder [Von AWS verwaltete Richtlinien für Auftragsfunktionen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) im *IAM-Benutzerhandbuch*.
+ **Anwendung von Berechtigungen mit den geringsten Rechten** – Wenn Sie mit IAM-Richtlinien Berechtigungen festlegen, gewähren Sie nur die Berechtigungen, die für die Durchfü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 von IAM zum Anwenden von Berechtigungen finden Sie unter [ Richtlinien und Berechtigungen in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) im *IAM-Benutzerhandbuch*.
+ **Verwenden von Bedingungen in IAM-Richtlinien zur weiteren Einschränkung des Zugriffs** – Sie können Ihren Richtlinien eine Bedingung hinzufügen, um den Zugriff auf Aktionen und Ressourcen zu beschränken. Sie können beispielsweise eine Richtlinienbedingung schreiben, um festzulegen, dass alle Anforderungen mithilfe von SSL gesendet werden müssen. Sie können auch Bedingungen verwenden, um Zugriff auf Serviceaktionen zu gewähren, wenn diese im Rahmen einer bestimmten Aktion verwendet werden AWS-Service, z. CloudFormation B. Weitere Informationen finden Sie unter [IAM-JSON-Richtlinienelemente: Bedingung](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) im *IAM-Benutzerhandbuch*.
+ **Verwenden von IAM Access Analyzer zur Validierung Ihrer IAM-Richtlinien, um sichere und funktionale Berechtigungen zu gewährleisten** – IAM Access Analyzer validiert neue und vorhandene Richtlinien, damit die Richtlinien der IAM-Richtliniensprache (JSON) und den bewährten IAM-Methoden entsprechen. IAM Access Analyzer stellt mehr als 100 Richtlinienprüfungen und umsetzbare Empfehlungen zur Verfügung, damit Sie sichere und funktionale Richtlinien erstellen können. Weitere Informationen finden Sie unter [Richtlinienvalidierung mit IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) im *IAM-Benutzerhandbuch*.
+ **Mehrstufige Authentifizierung (MFA) erforderlich ** — Wenn Sie ein Szenario haben, in dem IAM-Benutzer oder ein Root-Benutzer in Ihrem System erforderlich sind AWS-Konto, aktivieren Sie MFA für zusätzliche Sicherheit. Um MFA beim Aufrufen von API-Vorgängen anzufordern, fügen Sie Ihren Richtlinien MFA-Bedingungen hinzu. Weitere Informationen finden Sie unter [Sicherer API-Zugriff mit MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) im *IAM-Benutzerhandbuch*.

Weitere Informationen zu bewährten Methoden in IAM finden Sie unter [Best Practices für die Sicherheit in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) im *IAM-Benutzerhandbuch*.

## Verwendung der AWS DMS Konsole
<a name="security_iam_id-based-policy-examples-console"></a>

Die folgende Richtlinie gewährt Ihnen Zugriff auf AWS DMS, einschließlich der AWS DMS-Konsole, und legt außerdem Berechtigungen für bestimmte Aktionen fest, die für andere Amazon-Dienste wie Amazon EC2 erforderlich sind.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
     "Statement": [
    {
        "Effect": "Allow",
        "Action": "dms:*",
        "Resource": "arn:aws:dms:*:123456789012:*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "kms:ListAliases",
            "kms:DescribeKey"
        ],
        "Resource": "arn:aws:kms:*:123456789012:key/*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "iam:GetRole",
            "iam:CreateRole",
            "iam:AttachRolePolicy"
        ],
        "Resource": "arn:aws:iam::123456789012:role/*"
    },
    {
        "Effect": "Allow",
        "Action": "iam:PassRole",
        "Resource": "arn:aws:iam::123456789012:role/*",
        "Condition": {
            "StringEquals": {
                "iam:PassedToService": "dms.amazonaws.com"
            }
        }
    },
    {
        "Effect": "Allow",
        "Action": [
            "ec2:DescribeVpcs",
            "ec2:DescribeInternetGateways",
            "ec2:DescribeAvailabilityZones",
            "ec2:DescribeSubnets",
            "ec2:DescribeSecurityGroups",
            "ec2:ModifyNetworkInterfaceAttribute",
            "ec2:CreateNetworkInterface",
            "ec2:DeleteNetworkInterface"
        ],
        "Resource": "*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "cloudwatch:Get*",
            "cloudwatch:List*"
        ],
    "Resource": "*"
    },
    {
    "Effect": "Allow",
    "Action": [
        "logs:DescribeLogGroups",
        "logs:DescribeLogStreams",
        "logs:FilterLogEvents",
        "logs:GetLogEvents"
        ],
    "Resource": "arn:aws:logs:*:123456789012:*"
    }
   ]
}
```

------

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 die 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, die die Übergabe eines Rollen-ARN mit dem Endpunkt erfordern. Wenn die erforderlichen AWS DMS Rollen nicht im Voraus erstellt werden, hat die AWS DMS Konsole außerdem die Möglichkeit, die Rolle zu erstellen. Wenn alle Rollen vorab konfiguriert werden, muss dies innerhalb von `iam:GetRole` und `iam:PassRole` geschehen. Weitere Informationen zu Rollen finden Sie unter [Erstellen der IAM-Rollen zur Verwendung mit AWS DMS](security-iam.md#CHAP_Security.APIRole).

```
{
            "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 Amazon EC2-Instance erstellt und das Netzwerk für die erstellte Replikationsinstanz 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 [Erstellen der IAM-Rollen zur Verwendung mit AWS DMS](security-iam.md#CHAP_Security.APIRole).

Weitere Informationen zu den Anforderungen für die Verwendung dieser Richtlinie für den Zugriff auf AWS DMS finden Sie unter. [Für die Verwendung sind IAM-Berechtigungen erforderlich AWS DMS](security-iam.md#CHAP_Security.IAMPermissions)

## Gewähren der Berechtigung zur Anzeige der eigenen Berechtigungen für Benutzer
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

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

```
{
    "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
<a name="security_iam_id-based-policy-examples-access-one-bucket"></a>

AWS DMS verwendet Amazon S3-Buckets als Zwischenspeicher für die Datenbankmigration. In der Regel verwaltet AWS DMS zu diesem Zweck standardmäßige S3-Buckets. In bestimmten Fällen, insbesondere wenn Sie die AWS CLI oder die AWS DMS-API verwenden, können Sie mit DMS jedoch AWS 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`AmazonDMSRedshiftS3Role` -managed-Richtlinie basieren.

Das folgende Beispiel zeigt eine Version der Richtlinie `AmazonDMSRedshiftS3Role`. Dadurch kann AWS DMS einem IAM-Benutzer in Ihrem AWS Konto Zugriff auf einen Ihrer Amazon 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 es AWS DMS, den Bucket-Lebenszyklus zu verwalten. Außerdem ist die `s3:GetObjectAcl`-Aktion erforderlich, um Objekte kopieren zu können.

------
#### [ JSON ]

****  

```
{
    "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](CHAP_Target.Redshift.md#CHAP_Target.Redshift.EndpointSettings.S3Buckets).

## Zugriff AWS DMS Ressourcen, die auf Stichwörtern basieren
<a name="security_iam_id-based-policy-examples-access-resources-tags"></a>

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. Dieses Beispiel zeigt, 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.

------
#### [ JSON ]

****  

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

------

Sie können diese Richtlinie den IAM-Benutzern in Ihrem Konto anfügen. Wenn ein Benutzer mit dem Namen `richard-roe` versucht, auf einen AWS DMS Endpunkt zuzugreifen, muss die Endpunktdatenbank mit dem Tag oder gekennzeichnet `Owner=richard-roe` werden. `owner=richard-roe` 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 unter [IAM-JSON-Richtlinienelemente: Bedingung](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) im *IAM-Benutzerhandbuch*.