

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.

# Voraussetzungen: IAM-Rolle und Amazon-S3-Zugriff
<a name="bulk-load-tutorial-IAM"></a>

Das Laden von Daten aus einem Amazon Simple Storage Service (Amazon S3) -Bucket erfordert eine AWS Identity and Access Management (IAM) -Rolle, die Zugriff auf den Bucket hat. Amazon Neptune nimmt diese Rolle an, um die Daten zu laden.

**Anmerkung**  
Sie können verschlüsselte Daten aus Amazon S3 laden, wenn sie mit dem Amazon-S3-Modus `SSE-S3` verschlüsselt wurden. In diesem Fall kann Neptune Ihre Anmeldeinformationen vortäuschen und `s3:getObject`-Aufrufe in Ihrem Namen ausgeben.  
Sie können auch verschlüsselte Daten aus Amazon S3 laden, die mit dem Modus `SSE-KMS` verschlüsselt wurden, wenn Ihre IAM-Rolle die notwendigen Berechtigungen für den Zugriff auf AWS KMS besitzt. Ohne die entsprechenden AWS KMS Berechtigungen schlägt der Massenladevorgang fehl und es wird eine `LOAD_FAILED` Antwort zurückgegeben.  
Neptune unterstützt zurzeit nicht das Laden von Amazon-S3-Daten, die mit dem Modus `SSE-C` verschlüsselt wurden.

Die folgenden Abschnitte zeigen, wie Sie mit einer verwalteten IAM-Richtlinie eine IAM-Rolle für den Zugriff auf Amazon-S3-Ressourcen erstellen und die Rolle anschließend Ihrem Neptune-Cluster hinzufügen.

**Topics**
+ [Erstellen einer IAM-Rolle, um Amazon Neptune den Zugriff auf Amazon-S3-Ressourcen zu erlauben](bulk-load-tutorial-IAM-CreateRole.md)
+ [Hinzufügen der IAM-Rolle zu einem Amazon-Neptune-Cluster](bulk-load-tutorial-IAM-add-role-cluster.md)
+ [Erstellen des Amazon-S3-VPC-Endpunkts](bulk-load-tutorial-vpc.md)
+ [Verketten von IAM-Rollen in Amazon Neptune](bulk-load-tutorial-chain-roles.md)

**Anmerkung**  
Diese Anleitung erfordert den Zugriff auf die IAM-Konsole und Berechtigungen für die Verwaltung von IAM-Rollen und -Richtlinien. Weitere Informationen finden Sie unter [Berechtigungen für das Arbeiten in der AWS Management Console](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_permissions-required.html#Credentials-Permissions-overview-console) im *IAM-Benutzerhandbuch*.  
Die Amazon-Neptune-Konsole erfordert die folgenden IAM-Berechtigungen, um die Rolle dem Neptune-Cluster anfügen zu können:  

```
iam:GetAccountSummary on resource: *
iam:ListAccountAliases on resource: *
iam:PassRole on resource: * with iam:PassedToService restricted to rds.amazonaws.com
```

# Erstellen einer IAM-Rolle, um Amazon Neptune den Zugriff auf Amazon-S3-Ressourcen zu erlauben
<a name="bulk-load-tutorial-IAM-CreateRole"></a>

Sie können mit der verwalteten IAM-Richtlinie `AmazonS3ReadOnlyAccess` eine neue IAM-Rolle erstellen, die Amazon Neptune den Zugriff auf Amazon-S3-Ressourcen ermöglicht.

**Erstellen einer neuen IAM-Rolle, die Neptune den Zugriff auf Amazon S3 ermöglicht**

1. Öffnen Sie unter [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) die IAM-Konsole.

1. Wählen Sie im Navigationsbereich **Rollen** aus.

1. Wählen Sie **Create role** (Rolle erstellen) aus.

1. Wählen Sie in **AWS -Service** die Option **S3** aus.

1. Wählen Sie **Weiter: Berechtigungen** aus.

1. Verwenden Sie das Filterfeld, um nach dem Begriff **S3** zu filtern, und aktivieren Sie das Kästchen neben **ReadOnlyAccessAmazonS3**.
**Anmerkung**  
Diese Richtlinie erteilt `s3:Get*`- und `s3:List*`-Berechtigungen für alle Buckets. Mit später ausgeführten Schritten wird der Zugriff auf die Rolle mithilfe der Vertrauensrichtlinie beschränkt.  
Der Loader benötigt lediglich `s3:Get*`- und `s3:List*`-Berechtigungen für den Bucket, aus dem Sie Daten laden. Daher können Sie diese Berechtigungen auch nach Amazon-S3-Ressource einschränken.  
Wenn Ihr S3-Bucket verschlüsselt ist, müssen Sie `kms:Decrypt`-Berechtigungen hinzufügen.

1. Wählen Sie **Weiter: Prüfen** aus.

1. Legen Sie in **Rollenname** einen Namen für Ihre IAM-Rolle fest, zum Beispiel: `NeptuneLoadFromS3`. Sie können auch einen optionalen Wert für **Rollenbeschreibung** hinzufügen, z. B. „Ermöglicht Neptune den Zugriff auf Amazon-S3-Ressourcen in Ihrem Namen“.

1. Wählen Sie **Rolle erstellen** aus.

1. Wählen Sie im Navigationsbereich **Rollen** aus.

1. Geben Sie im Feld **Search (Suchen)** den Namen der von Ihnen erstellten Rolle ein und wählen Sie die Rolle aus, wenn sie in der Liste erscheint.

1. Klicken Sie auf der Registerkarte **Trust Relationships (Vertrauensstellungen)** auf **Edit Trust Relationship (Vertrauensstellung bearbeiten)**.

1. Fügen Sie die folgende Vertrauensrichtlinie in das Textfeld ein.

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "",
         "Effect": "Allow",
         "Principal": {
           "Service": [
             "rds.amazonaws.com"
           ]
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

1. Wählen Sie **Update trust policy (Vertrauensrichtlinie aktualisieren)** aus.

1. Führen Sie die Schritte unter [Hinzufügen der IAM-Rolle zu einem Amazon-Neptune-Cluster](bulk-load-tutorial-IAM-add-role-cluster.md) aus.

# Hinzufügen der IAM-Rolle zu einem Amazon-Neptune-Cluster
<a name="bulk-load-tutorial-IAM-add-role-cluster"></a>

Verwenden Sie die Konsole, um die IAM-Rolle zu einem Amazon-Neptune-Cluster hinzuzufügen. So können alle Neptune-DB-Instances im Cluster die Rolle annehmen und Daten aus Amazon S3 laden.

**Anmerkung**  
Die Amazon-Neptune-Konsole erfordert die folgenden IAM-Berechtigungen, um die Rolle dem Neptune-Cluster anfügen zu können:  

```
iam:GetAccountSummary on resource: *
iam:ListAccountAliases on resource: *
iam:PassRole on resource: * with iam:PassedToService restricted to rds.amazonaws.com
```

**Hinzufügen einer IAM-Rolle zu einem Amazon-Neptune-Cluster**

1. [Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon Neptune Neptune-Konsole zu Hausehttps://console.aws.amazon.com/neptune/.](https://console.aws.amazon.com/neptune/home)

1. Wählen Sie im Navigationsbereich **Datenbanken** aus.

1. Wählen Sie die Cluster-ID für den Cluster, den Sie ändern möchten.

1. Wählen Sie die Registerkarte **Konnektivität und Sicherheit**.

1. Wählen Sie im Abschnitt IAM-Rollen die Rolle aus, die Sie im vorherigen Abschnitt erstellt haben.

1. Wählen Sie **Rolle hinzufügen** aus.

1. Warten Sie, bis die IAM-Rolle für den Cluster zugänglich ist, bevor Sie sie verwenden.

# Erstellen des Amazon-S3-VPC-Endpunkts
<a name="bulk-load-tutorial-vpc"></a>

Der Neptune-Loader erfordert einen VPC-Endpunkt des Typs Gateway für Amazon S3.

**So richten Sie den Zugriff für Amazon S3 ein**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon VPC-Konsole unter [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Wählen Sie im Navigationsbereich **Endpunkte** aus.

1. Klicken Sie auf **Endpunkt erstellen**.

1. Wählen Sie den **Servicenamen** `com.amazonaws.region.s3` für den Endpunkt vom Typ Gateway aus.
**Anmerkung**  
Wenn die Region hier nicht korrekt ist, stellen Sie sicher, dass die Konsolenregion richtig ist.

1. Wählen Sie die VPC aus, die Ihre Neptune-DB-Instance enthält (sie wird in der Neptune-Konsole für Ihre DB-Instance aufgelistet).

1. Aktivieren Sie das Kontrollkästchen neben den Routing-Tabellen, die den Subnetzen Ihres Clusters zugeordnet sind. Wenn Sie nur eine Routing-Tabelle vorliegen haben, müssen Sie das entsprechende Kontrollkästchen aktivieren.

1. Klicken Sie auf **Endpunkt erstellen**.

Informationen zum Erstellen von Endpunkten finden Sie unter [VPC-Endpunkte](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html#create-vpc-endpoint) im *Amazon-VPC-Benutzerhandbuch*. Informationen zu den Einschränkungen für VPC-Endpunkte finden Sie unter [VPC-Endpunkte für Amazon S3](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-s3.html).

**Nächste Schritte**  
Nachdem Sie nun Zugriff auf den Amazon-S3-Bucket gewährt haben, können Sie das Laden von Daten vorbereiten. Informationen zu unterstützten Formaten finden Sie unter [Ladedatenformate](bulk-load-tutorial-format.md)

# Verketten von IAM-Rollen in Amazon Neptune
<a name="bulk-load-tutorial-chain-roles"></a>

**Wichtig**  
Das in [Engine-Version 1.2.1.0.R3](engine-releases-1.2.1.0.R3.md) eingeführte neue kontoübergreifende Massenlade-Feature, das die Vorteile der IAM-Rollen-Verkettung nutzt, kann in einigen Fällen zu einer Verschlechterung der Massenlade-Leistung führen. Daher wurden Upgrades auf Engine-Versionen, die dieses Feature unterstützen, vorübergehend ausgesetzt, bis dieses Problem behoben ist.

Wenn Sie Ihrem Cluster eine Rolle anfügen, kann Ihr Cluster diese Rolle annehmen, um auf in Amazon S3 gespeicherte Daten zuzugreifen. Wenn diese Rolle nicht auf alle benötigten Ressourcen zugreifen kann, können Sie ab [Engine-Version 1.2.1.0.R3](engine-releases-1.2.1.0.R3.md) eine oder mehrere zusätzliche Rollen verketten, die Ihr Cluster annehmen kann, um Zugriff auf andere Ressourcen zu erhalten. Jede Rolle in der Kette nimmt die nächste Rolle in der Kette an, bis Ihr Cluster die Rolle am Ende der Kette angenommen hat.

Zum Verketten von Rollen richten Sie eine Vertrauensstellung zwischen den Rollen ein. Um beispielsweise `RoleB` mit `RoleA` zu verketten, muss `RoleA` eine Berechtigungsrichtlinie für die Annahme von `RoleB` besitzen. `RoleB` muss eine Vertrauensrichtlinie besitzen, die die Übergabe der Berechtigungen zurück an `RoleA` ermöglicht. Weitere Informationen finden Sie unter [Verwenden von IAM-Rollen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html).

Die erste Rolle in einer Kette muss eine dem Cluster angefügte Rolle sein, die Daten lädt.

Die erste und jede folgende Rolle, die die folgende Rolle in der Kette annimmt, muss Folgendes besitzen:
+ Eine Richtlinie, die eine spezifische Aussage zum `Allow`-Effekt auf die Aktion `sts:AssumeRole` enthält.
+ Der Amazon-Ressourcenname (ARN) der nächsten Rolle in einem `Resource`-Element

**Anmerkung**  
Der Amazon S3 S3-Ziel-Bucket muss sich in derselben AWS Region wie der Cluster befinden.

## Kontoübergreifender Zugriff mithilfe von Rollen
<a name="bulk-load-tutorial-chain-cross-account"></a>

Sie können einen kontoübergreifenden Zugriff gewähren, indem Sie eine oder mehrere Rollen verketten, die zu einem anderen Konto gehören. Wenn Ihr Cluster vorübergehend eine Rolle annimmt, die zu einem anderen Konto gehört, kann er Zugriff auf die Ressourcen in diesem Konto erhalten.

Angenommen, **Konto A** möchte auf Daten in einem Amazon-S3-Bucket zugreifen, der zu **Konto B** gehört:
+ **Konto A** erstellt eine benannte AWS Servicerolle für Neptune `RoleA` und ordnet sie einem Cluster zu.
+ **Konto B** erstellt eine Rolle mit dem Namen `RoleB`, die zum Zugriff auf die Daten in einem Bucket in **Konto B** berechtigt ist.
+ **Konto A** fügt eine Berechtigungsrichtlinie an `RoleA` an, um `RoleB` anzunehmen.
+ **Konto B** fügt eine Vertrauensrichtlinie an `RoleB` an, um die Rückgabe der Berechtigungen an `RoleA` zu ermöglichen.
+ Um auf die Daten im Bucket von **Konto B** zuzugreifen, führt **Konto A** einen Loader-Befehl mit dem Parameter `iamRoleArn` aus, der `RoleA` und `RoleB` verkettet. Für die Dauer der Loader-Operation nimmt `RoleA` vorübergehend `RoleB` an, um auf den Amazon-S3-Bucket in **Konto B** zuzugreifen.

![\[Diagramm, das den kontoübergreifenden Zugriff mithilfe verketteter Rollen zeigt\]](http://docs.aws.amazon.com/de_de/neptune/latest/userguide/images/cross-account-bulk-load.png)


Beispielsweise würde `RoleA` eine Vertrauensrichtlinie besitzen, die eine Vertrauensstellung mit Neptune einrichtet:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
          "Service": "rds.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

`RoleA` würde auch eine Berechtigungsrichtlinie besitzen, die die Annahme von `RoleB` im Besitz von **Konto B** ermöglicht:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Stmt1487639602000",
            "Effect": "Allow",
            "Action": [
                "sts:AssumeRole"
            ],
            "Resource": "arn:aws:iam::111122223333:role/RoleB"
        }
    ]
}
```

------

Umgekehrt würde `RoleB` eine Vertrauensrichtlinie für die Einrichtung einer Vertrauensstellung mit `RoleA` besitzen:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/RoleA"
            }
        }
    ]
}
```

------

`RoleB` würde auch eine Berechtigung für den Zugriff auf Daten in dem Amazon-S3-Bucket benötigen, der sich in **Konto B** befindet.

## Einen AWS -Security-Token-Service (STS-) VPC-Endpunkt erstellen
<a name="bulk-load-tutorial-sts-endpoint"></a>

Der Neptune-Loader benötigt einen AWS STS VPC-Endpunkt für die Verkettung von IAM-Rollen für den privaten Zugriff über AWS STS APIs private IP-Adressen. Sie können auf sichere und skalierbare Weise eine direkte Verbindung von einer Amazon-VPC zu AWS STS einem VPC-Endpunkt herstellen. Wenn Sie einen Schnittstellen-VPC-Endpunkt verwenden, wird die Sicherheitslage verbessert, da Sie keine Firewalls für den ausgehenden Datenverkehr öffnen müssen. Sie erhalten außerdem die übrigen Vorteile der Verwendung von Amazon-VPC-Endpunkten.

Bei Verwendung eines VPC-Endpunkts wird der Datenverkehr AWS STS nicht über das Internet übertragen und verlässt niemals das Amazon-Netzwerk. Ihre VPC ist sicher verbunden, AWS STS ohne dass Verfügbarkeitsrisiken oder Bandbreitenbeschränkungen für Ihren Netzwerkverkehr auftreten. Weitere Informationen finden Sie unter [Verwenden von AWS STS -Schnittstellen-VPC-Endpunkten](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts_vpce.html).

**Um den Zugriff für AWS -Security-Token-Service (STS) einzurichten**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon VPC-Konsole unter [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Wählen Sie im Navigationsbereich **Endpunkte** aus.

1. Klicken Sie auf **Endpunkt erstellen**.

1. Wählen Sie den **Servicenamen** aus: `com.amazonaws.region.sts` für den Endpunkt vom Typ Schnittstelle.

1. Wählen Sie die **VPC** aus, die Ihre Neptune-DB-Instance und EC2-Instance enthält.

1. Aktivieren Sie das Kontrollkästchen neben dem Subnetz, in dem sich Ihre EC2-Instance befindet. Sie können nicht mehrere Subnetze aus derselben Availability Zone auswählen.

1. Wählen Sie für IP address type (IP-Adressentyp) eine der folgenden Optionen aus:
   + **IPv4**— Weisen Sie Ihren Endpunkt-Netzwerkschnittstellen IPv4 Adressen zu. Diese Option wird nur unterstützt, wenn alle ausgewählten Subnetze IPv4 Adressbereiche haben.
   + **IPv6**— Weisen Sie Ihren Endpunkt-Netzwerkschnittstellen IPv6 Adressen zu. Diese Option wird nur unterstützt, wenn es sich bei allen ausgewählten Subnetzen um reine IPv6 Subnetze handelt.
   + **Dualstack — Weisen Sie Ihren** Endpunkt-Netzwerkschnittstellen IPv4 sowohl IPv6 Adressen als auch Adressen zu. Diese Option wird nur unterstützt, wenn alle ausgewählten Subnetze IPv4 sowohl IPv6 als auch Adressbereiche haben.

1. Wählen Sie für **Sicherheitsgruppen** die Sicherheitsgruppen aus, die den Endpunkt-Netzwerkschnittstellen für den VPC-Endpunkt zugeordnet werden sollen. Sie müssten alle Sicherheitsgruppen auswählen, die Ihrer Neptune-DB-Instance und EC2-Instance angefügt sind.

1. Wählen Sie für **Policy** (Richtlinie) **Full access** (Vollzugriff), um alle Operationen aller Prinzipale auf allen Ressourcen über den VPC-Endpunkt zuzulassen. Wählen Sie andernfalls **Custom** (Benutzerdefiniert), um eine VPC-Endpunktrichtlinie anzufügen, die die Berechtigungen steuert, die Prinzipale zum Ausführen von Aktionen für Ressourcen über den VPC-Endpunkt haben. Diese Option ist nur verfügbar, wenn der Service VPC-Endpunktrichtlinien unterstützt. Weitere Informationen finden Sie unter [Endpunktrichtlinien](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html).

1. (*Optional*) Sie fügen ein Tag hinzu, indem Sie **Neuen Tag hinzufügen** auswählen und Schlüssel und Wert für das Tag eingeben.

1. Wählen Sie **Endpunkt erstellen** aus.

Informationen zum Erstellen von Endpunkten finden Sie unter [VPC-Endpunkte](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) im Amazon-VPC-Benutzerhandbuch. Bitte beachten Sie, dass Amazon-STS-VPC-Endpunkte eine Voraussetzung für die Verkettung von IAM-Rollen sind.

Nachdem Sie nun Zugriff auf den AWS STS Endpunkt gewährt haben, können Sie sich darauf vorbereiten, Daten zu laden. Weitere Informationen zu unterstützten Formaten finden Sie unter [Ladedatenformate](bulk-load-tutorial-format.md).

## Verkettung von Rollen innerhalb eines Loader-Befehls
<a name="bulk-load-tutorial-loader-chain"></a>

Sie können die Rollenverkettung angeben, wenn Sie einen Loader-Befehl ausführen, indem Sie eine durch Kommas getrennte Rollenliste ARNs in den Parameter aufnehmen. `iamRoleArn`

Obwohl Sie in der Regel nur zwei Rollen in einer Kette benötigen, ist es durchaus möglich, drei oder mehr Rollen zu verketten. Dieser Loader-Befehl verkettet beispielsweise drei Rollen:

```
curl -X POST https://localhost:8182/loader \
  -H 'Content-Type: application/json' \
  -d '{
        "source" : "s3://(the target bucket name)/(the target date file name)",
        "iamRoleArn" : "arn:aws:iam::(Account A ID):role/(RoleA),arn:aws:iam::(Account B ID):role/(RoleB),arn:aws:iam::(Account C ID):role/(RoleC)",
        "format" : "csv",
        "region" : "us-east-1"
      }'
```