

AWS -Tools für PowerShell V4 ist in den Wartungsmodus gewechselt.

Wir empfehlen Ihnen, auf [AWS -Tools für PowerShell V5](https://docs.aws.amazon.com/powershell/v5/userguide/) zu migrieren. Weitere Einzelheiten und Informationen zur Migration finden Sie in unserer [Ankündigung zum Wartungsmodus](https://aws.amazon.com/blogs/developer/aws-tools-for-powershell-v4-maintenance-mode-announcement/).

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.

# Amazon S3 und Tools für Windows PowerShell
<a name="pstools-s3"></a>

In diesem Abschnitt erstellen wir eine statische Website mithilfe AWS Tools for Windows PowerShell von Amazon S3 und CloudFront. Während des Vorgangs werden verschiedene gebräuchliche Aufgaben mit diesen Services gezeigt. Diese Schritte orientieren sich am Handbuch Erste Schritte für das [Hosten einer statischen Website](https://aws.amazon.com/getting-started/projects/host-static-website/), in der ein ähnlicher Prozess unter Verwendung der [AWS -Managementkonsole](https://console.aws.amazon.com/s3/home) beschrieben wird.

Bei den hier gezeigten Befehlen wird davon ausgegangen, dass Sie Standardanmeldedaten und eine Standardregion für Ihre PowerShell Sitzung festgelegt haben. Daher werden beim Aufrufen der Cmdlets keine Anmeldeinformationen und Regionen übergeben.

**Anmerkung**  
Derzeit gibt es keine Amazon S3 S3-API zum Umbenennen eines Buckets oder Objekts und daher kein einzelnes Tools for PowerShell Windows-Cmdlet für die Ausführung dieser Aufgabe. Um ein Objekt in S3 umzubenennen, empfehlen wir, das Objekt in ein Objekt mit einem neuen Namen zu kopieren, indem Sie das [Copy-S3Object](https://docs.aws.amazon.com/powershell/v4/reference/items/Copy-S3Object.html)Cmdlet ausführen, und dann das ursprüngliche Objekt zu löschen, indem Sie das Cmdlet ausführen. [Remove-S3Object](https://docs.aws.amazon.com/powershell/v4/reference/items/Remove-S3Object.html)

**Weitere Informationen finden Sie auch unter**
+  [Arbeiten Sie mit AWS Diensten in der AWS -Tools für PowerShell](pstools-using.md) 
+  [Hosten einer statischen Website auf Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) 
+  [Amazon S3-Konsole](https://console.aws.amazon.com/s3/home) 

**Topics**
+ [Erstellen eines Amazon-S3-Buckets, Verifizieren der Region und (optional) Entfernen des Buckets](pstools-s3-bucket-create.md)
+ [Konfigurieren eines Amazon-S3-Buckets als Website und Aktivieren der Protokollierung](pstools-s3-create-website.md)
+ [Hochladen von Objekten in einen Amazon-S3-Bucket](pstools-s3-upload-object.md)
+ [Löschen von Amazon-S3-Objekten und -Buckets](pstools-s3-delete-website.md)
+ [Hochladen von Inline-Textinhalt nach Amazon S3](pstools-s3-upload-in-line-text.md)

# Erstellen eines Amazon-S3-Buckets, Verifizieren der Region und (optional) Entfernen des Buckets
<a name="pstools-s3-bucket-create"></a>

Mit dem `New-S3Bucket`-Cmdlet können Sie einen neuen Amazon-S3-Bucket erstellen. In den folgenden Beispielen wird ein Bucket mit dem Namen `website-example` erstellt. Der Name des Buckets muss regionsübergreifend eindeutig sein. Im Beispiel wird der Bucket in der Region `us-west-1` erstellt.

```
PS > New-S3Bucket -BucketName website-example -Region us-west-2

CreationDate         BucketName
------------         ----------
8/16/19 8:45:38 PM   website-example
```

Die Region, in der sich der Bucket befindet, kann mit dem Cmdlet `Get-S3BucketLocation` ermittelt werden.

```
PS > Get-S3BucketLocation -BucketName website-example

Value
-----
us-west-2
```

Wenn Sie dieses Tutorial abgeschlossen haben, können Sie diesen Bucket mithilfe der folgenden Zeile entfernen. Wir empfehlen aber, den Bucket nicht zu entfernen, da er in späteren Beispielen verwendet wird.

```
PS > Remove-S3Bucket -BucketName website-example
```

Beachten Sie, dass das Entfernen eines Buckets einige Zeit in Anspruch nehmen kann. Wenn Sie versuchen, sofort einen Bucket mit dem gleichen Namen zu erstellen, kann das Cmdlet `New-S3Bucket` fehlschlagen, bis der alte Bucket vollständig verschwunden ist.

## Weitere Informationen finden Sie unter:
<a name="pstools-seealso-s3-bucket-create"></a>
+  [Arbeiten Sie mit AWS Diensten in der AWS -Tools für PowerShell](pstools-using.md) 
+  [PUT Bucket (Amazon S3-Servicereferenz)](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUT.html) 
+  [AWS PowerShell Regionen für Amazon S3](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) 

# Konfigurieren eines Amazon-S3-Buckets als Website und Aktivieren der Protokollierung
<a name="pstools-s3-create-website"></a>

Verwenden Sie das Cmdlet `Write-S3BucketWebsite`, um einen Amazon-S3-Bucket als statische Website zu konfigurieren. Das folgende Beispiel gibt einen Namen der `index.html`-Datei für die Standardwebseite mit dem Inhalt und einen Namen für die `error.html`-Datei für die Standardwebseite mit den Fehlern an. Beachten Sie, dass dieses Cmdlet diese Seiten nicht erstellt. Sie müssen [als Amazon S3-Objekte hochgeladen](pstools-s3-upload-object.md) werden.

```
PS > Write-S3BucketWebsite -BucketName website-example -WebsiteConfiguration_IndexDocumentSuffix index.html -WebsiteConfiguration_ErrorDocument error.html
RequestId      : A1813E27995FFDDD
AmazonId2      : T7hlDOeLqA5Q2XfTe8j2q3SLoP3/5XwhUU3RyJBGHU/LnC+CIWLeGgP0MY24xAlI
ResponseStream :
Headers        : {x-amz-id-2, x-amz-request-id, Content-Length, Date...}
Metadata       : {}
ResponseXml    :
```

## Weitere Informationen finden Sie unter:
<a name="pstools-seealso-s3-create-website"></a>
+  [Arbeiten Sie mit AWS Diensten in der AWS -Tools für PowerShell](pstools-using.md) 
+  [Put Bucket Website (Amazon S3-API-Referenz)](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTwebsite.html) 
+  [Put Bucket ACL (Amazon S3-API-Referenz)](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html) 

# Hochladen von Objekten in einen Amazon-S3-Bucket
<a name="pstools-s3-upload-object"></a>

Verwenden Sie das Cmdlet `Write-S3Object` zum Hochladen von Dateien (als Objekte) aus dem lokalen Dateisystem in einen Amazon-S3-Bucket. Das folgende Beispiel erstellt zwei einfache HTML-Dateien, lädt sie in einen Amazon-S3-Bucket hoch und verifiziert die hochgeladenen Objekte. Der Parameter `-File` von `Write-S3Object` gibt den Namen der Datei im lokalen Dateisystem an. Der Parameter `-Key` gibt den Namen an, den das entsprechende Objekt in Amazon S3 hat.

Amazon leitet "content-type" der Objekte aus den Dateinamenserweiterungen – in diesem Fall ".html" – ab.

```
PS > # Create the two files using here-strings and the Set-Content cmdlet
PS > $index_html = @"
>> <html>
>>   <body>
>>     <p>
>>       Hello, World!
>>     </p>
>>   </body>
>> </html>
>> "@
>>
PS > $index_html | Set-Content index.html
PS > $error_html = @"
>> <html>
>>   <body>
>>     <p>
>>       This is an error page.
>>     </p>
>>   </body>
>> </html>
>> "@
>>
>>$error_html | Set-Content error.html
>># Upload the files to Amazon S3 using a foreach loop
>>foreach ($f in "index.html", "error.html") {
>> Write-S3Object -BucketName website-example -File $f -Key $f -CannedACLName public-read
>> }
>>
PS > # Verify that the files were uploaded
PS > Get-S3BucketWebsite -BucketName website-example

IndexDocumentSuffix                                         ErrorDocument
-------------------                                         -------------
index.html                                                  error.html
```

 *Vordefinierte ACL-Optionen* 

Die Werte für die Angabe von „ ACLs Gespeichert“ mit den Tools für Windows PowerShell entsprechen denen, die von der verwendet werden AWS SDK für .NET. Beachten Sie jedoch, dass diese Werte sich von den Werten unterscheiden, die die Amazon-S3`Put Object`-Aktion verwendet. Die Tools für Windows PowerShell unterstützen die folgenden gespeicherten Optionen ACLs:
+ NoACL
+ private
+ public-read
+ public-read-write
+ aws-exec-read
+ authenticated-read
+ bucket-owner-read
+ bucket-owner-full-control
+ log-delivery-write

Weitere Informationen zu diesen vordefinierten ACL-Einstellungen finden Sie unter [Zugriffskontrolllisten (ACL) – Übersicht](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl).

## Hinweis zu mehrteiligen Uploads
<a name="note-regarding-multipart-upload"></a>

Wenn Sie die Amazon-S3-API in eine Datei mit mehr als 5 GB hochladen, müssen Sie den mehrteiligen Upload nutzen. Das von den Tools für Windows bereitgestellte `Write-S3Object` Cmdlet PowerShell kann jedoch Dateiuploads, die größer als 5 GB sind, transparent verarbeiten.

### Testen der Website
<a name="pstools-amazon-s3-test-website"></a>

An dieser Stelle können Sie die Website testen, indem Sie sie mit einem Browser aufrufen. URLs für statische Websites, die in Amazon S3 gehostet werden, folgen Sie einem Standardformat.

```
http://<bucket-name>.s3-website-<region>.amazonaws.com
```

Zum Beispiel:

```
http://website-example.s3-website-us-west-1.amazonaws.com
```

### Weitere Informationen finden Sie unter:
<a name="pstools-seealso-amazon-s3-test-website"></a>
+  [Arbeiten Sie mit AWS Diensten in der AWS -Tools für PowerShell](pstools-using.md) 
+  [Put Object (Amazon S3-API-Referenz)](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html) 
+  [ ACLs Gespeichert (Amazon S3 S3-API-Referenz)](https://docs.aws.amazon.com/AmazonS3/latest/dev/ACLOverview.html#CannedACL) 

# Löschen von Amazon-S3-Objekten und -Buckets
<a name="pstools-s3-delete-website"></a>

In diesem Abschnitt wird beschrieben, wie Sie die in den vorhergehenden Abschnitten erstellte Website löschen. Sie können einfach die Objekte für die HTML-Dateien und danach den Amazon-S3-Bucket für die Website löschen.

Führen Sie das Cmdlet `Remove-S3Object` aus, um die Objekte für die HTML-Dateien im Amazon-S3-Bucket zu löschen.

```
PS > foreach ( $obj in "index.html", "error.html" ) {
>> Remove-S3Object -BucketName website-example -Key $obj
>> }
>> 
IsDeleteMarker
--------------
False
```

Der Rückgabewert `False` ist ein Artefakt, das sich aus der Art der Anforderungsverarbeitung durch Amazon S3 ergibt. In diesem Kontext weist der Wert nicht auf ein Problem hin.

Jetzt können Sie das Cmdlet `Remove-S3Bucket` ausführen, um den nun leeren Amazon-S3-Bucket für die Website zu löschen.

```
PS > Remove-S3Bucket -BucketName website-example

RequestId      : E480ED92A2EC703D
AmazonId2      : k6tqaqC1nMkoeYwbuJXUx1/UDa49BJd6dfLN0Ls1mWYNPHjbc8/Nyvm6AGbWcc2P
ResponseStream :
Headers        : {x-amz-id-2, x-amz-request-id, Date, Server}
Metadata       : {}
ResponseXml    :
```

In 1.1 und neueren Versionen von können Sie den AWS -Tools für PowerShell`-DeleteBucketContent` Parameter zu hinzufügen`Remove-S3Bucket`, der zuerst alle Objekte und Objektversionen im angegebenen Bucket löscht, bevor versucht wird, den Bucket selbst zu entfernen. Je nach Anzahl der Objekte oder Objektversionen im Bucket kann dieser Vorgang längere Zeit dauern. In Versionen der Tools für Windows, die PowerShell älter als 1.1 waren, musste der Bucket leer sein, bevor er gelöscht werden `Remove-S3Bucket` konnte.

**Anmerkung**  
Sofern Sie den `-Force` Parameter nicht hinzufügen, AWS -Tools für PowerShell werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

## Weitere Informationen finden Sie unter:
<a name="pstools-seealso-amazon-s3-delete-website"></a>
+  [Arbeiten Sie mit AWS Diensten in der AWS -Tools für PowerShell](pstools-using.md) 
+  [Delete Object (Amazon S3-API-Referenz)](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html) 
+  [DeleteBucket (Amazon S3 S3-API-Referenz)](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketDELETE.html) 

# Hochladen von Inline-Textinhalt nach Amazon S3
<a name="pstools-s3-upload-in-line-text"></a>

Das Cmdlet `Write-S3Object` unterstützt das Hochladen von Inline-Textinhalt nach Amazon S3. Sie können mit dem Parameter `-Content` (Alias `-Text`) Textinhalt nach Amazon S3 hochladen, ohne dass dieser zuerst in eine Datei eingefügt werden muss. Der Parameter akzeptiert sowohl einfache einzeilige Zeichenfolgen als auch – wie hier gezeigt – Zeichenfolgen mit mehreren Zeilen.

```
PS > # Specifying content in-line, single line text:
PS > write-s3object amzn-s3-demo-bucket -key myobject.txt -content "file content"

PS > # Specifying content in-line, multi-line text: (note final newline needed to end in-line here-string)
PS > write-s3object amzn-s3-demo-bucket -key myobject.txt -content @"
>> line 1
>> line 2
>> line 3
>> "@
>> 
PS > # Specifying content from a variable: (note final newline needed to end in-line here-string)
PS > $x = @"
>> line 1
>> line 2
>> line 3
>> "@
>> 
PS > write-s3object amzn-s3-demo-bucket -key myobject.txt -content $x
```