

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
<a name="kb-managed-ds-s3"></a>

Amazon S3 ist ein Objektspeicherdienst, der Daten als Objekte in Buckets speichert. Sie können einen Amazon S3 S3-Bucket als Datenquelle für Ihre verwaltete Wissensdatenbank verbinden, um die dort gespeicherten Objekte aufzunehmen.

## Unterstützte Features
<a name="kb-managed-supported-features-s3"></a>
+ Dokumentieren Sie Metadatenfelder mit separaten Metadatendateien
+ Inhaltsfilter zum Ein- und Ausschließen mithilfe von Dateimustern und S3-Schlüsselpräfixen
+ Inkrementelle Inhaltssynchronisierung für hinzugefügte, aktualisierte und gelöschte Inhalte
+ Cross-account Amazon S3 S3-Bucket-Zugriff
+ Document-level Zugriffskontrolle (ACLs) mit vom Kunden bereitgestellten ACL-Dateien

## Voraussetzungen
<a name="kb-managed-prereqs-s3"></a>

**Stellen Sie in Amazon S3 Folgendes sicher**:
+ Notieren Sie sich den Amazon S3 S3-Bucket-Namen und die AWS Konto-ID des Bucket-Besitzers. Bei dem Bucket muss es sich um einen Allzweck-Bucket in derselben AWS Region wie Ihre Wissensdatenbank handeln, und Sie müssen über die entsprechende Zugriffsberechtigung verfügen.
+ Wenn sich der Bucket in einem anderen AWS Konto als der Wissensdatenbank befindet oder wenn er mit einem vom Kunden verwalteten KMS-Schlüssel verschlüsselt ist, konfigurieren Sie die Bucket-Richtlinie und (falls zutreffend) die KMS-Schlüsselrichtlinie so, dass der Zugriff von Ihrer Wissensdatenbank-Servicerolle aus möglich ist. Siehe [Bucket-Richtlinien für kontoübergreifenden Zugriff und Kontozugriff KMS-encrypted](#kb-managed-s3-bucket-policies).

Stellen **Sie in Ihrem AWS Konto sicher, dass Sie**:
+ Nehmen Sie die erforderlichen Berechtigungen für die Verbindung mit Ihrer Datenquelle in Ihre AWS Identity and Access Management (IAM-) role/permissions Richtlinie für Ihre Wissensdatenbank auf. Informationen zu den erforderlichen Berechtigungen finden Sie unter[Berechtigungen für den Zugriff auf Ihre Datenquellen](kb-permissions.md#kb-permissions-access-ds).

## Bucket-Richtlinien für kontoübergreifenden Zugriff und Kontozugriff KMS-encrypted
<a name="kb-managed-s3-bucket-policies"></a>

Wenn sich Ihr Amazon S3 S3-Bucket in einem anderen AWS Konto als Ihrer Wissensdatenbank befindet oder wenn er mit einem vom Kunden verwalteten KMS-Schlüssel verschlüsselt ist, fügen Sie eine ressourcenbasierte Richtlinie hinzu, um Ihrer Wissensdatenbank-Servicerolle Zugriff zu gewähren. Die folgenden Beispiele zeigen, welche Mindestanweisungen erforderlich sind.

### Cross-account Bucket-Richtlinie
<a name="kb-managed-s3-cross-account-policy"></a>

Fügen Sie in dem Konto, dem der Amazon S3 S3-Bucket gehört, die folgende Anweisung zur Bucket-Richtlinie hinzu. {{kb-account-id}}Ersetzen Sie es durch die Konto-ID, unter der Ihre Wissensdatenbank erstellt wurde, {{kb-service-role}} durch den Namen Ihrer Wissensdatenbank-Servicerolle und {{bucket-name}} durch Ihren Bucket-Namen.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowBedrockKnowledgeBaseAccess",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::{{kb-account-id}}:role/{{kb-service-role}}"
            },
            "Action": [
                "s3:GetObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{bucket-name}}",
                "arn:aws:s3:::{{bucket-name}}/*"
            ]
        }
    ]
}
```

Eine allgemeinere Anleitung finden [Sie unter Zugriff auf Amazon S3 S3-Buckets konfigurieren](https://docs.aws.amazon.com/bedrock/latest/userguide/s3-bucket-access.html).

### KMS-Schlüsselrichtlinie für verschlüsselte Buckets
<a name="kb-managed-s3-kms-policy"></a>

Wenn Ihr Amazon S3 S3-Bucket mit einem vom Kunden verwalteten KMS-Schlüssel verschlüsselt ist, fügen Sie der Schlüsselrichtlinie die folgende Erklärung hinzu. Verwenden Sie dieselben Platzhalter wie in der kontoübergreifenden Bucket-Richtlinie. Warten Sie einige Minuten, bis wichtige Richtlinienänderungen wirksam werden.

```
{
    "Sid": "AllowBedrockKnowledgeBaseKmsAccess",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::{{kb-account-id}}:role/{{kb-service-role}}"
    },
    "Action": [
        "kms:Decrypt",
        "kms:DescribeKey"
    ],
    "Resource": "*"
}
```

`"Resource": "*"`Hier geht es um den Schlüssel, an den die Richtlinie angehängt ist.

## So richten Sie eine Amazon S3 S3-Datenquelle ein
<a name="kb-managed-s3-workflow"></a>

Die Einrichtung einer Amazon S3 S3-Datenquelle umfasst die folgenden Schritte:

1. **Bereiten Sie Ihren Bucket vor.** Bestätigen Sie den Bucket-Namen, die Konto-ID und (für kontoübergreifenden Zugriff) die Bucket-Richtlinie. Wenn Sie Dokument-Metadaten verwenden möchten, entscheiden Sie sich für das Amazon S3 S3-Präfix, in dem sich Ihre `.metadata.json` Dateien befinden.

1. **Connect zur Datenquelle her.** Erstellen Sie die Amazon S3 S3-Datenquelle in der Wissensdatenbank mithilfe der AWS-Managementkonsole oder der API. Siehe [Erstellen Sie die Datenquelle](#kb-managed-ds-s3-create).

1. **(Optional) Aktivieren Sie die Zugriffskontrolle auf Dokumentebene.** Filtern Sie die Abfrageergebnisse nach Benutzerberechtigungen, die in vom Kunden bereitgestellten ACL-Dateien definiert sind. Siehe [Document-level Zugriffskontrollen](kb-managed-ds-s3-acl.md).

## Erstellen Sie die Datenquelle
<a name="kb-managed-ds-s3-create"></a>

------
#### [ Console ]

**So verbinden Sie einen Amazon S3 S3-Bucket mit Ihrer verwalteten Wissensdatenbank**

1. Geben Sie unter **Datenquelle** einen Namen für Ihre Datenquelle ein.

1. Wählen Sie **Amazon S3** aus dem Drop-down-Menü für die Datenquelle aus.

1. Wählen Sie unter **Speicherort der Datenquelle** aus, ob sich der Amazon S3 S3-Bucket unter **Dieses AWS-Konto** oder **Anderes AWS-Konto** befindet.

1. Geben Sie die Amazon S3 S3-URI Ihres Buckets ein. Sie können **Browse S3** wählen, um einen Bucket auszuwählen.

1. (Optional) Geben Sie ein **Präfix für Metadatendateien** ein — das Amazon S3 S3-Präfix, in dem Dokument-Metadatendateien (`.metadata.json`) für diese Datenquelle gespeichert werden.

1. (Optional) Erweitern Sie die **S3-Präfixfiltermuster**, um bestimmte Pfade ein- oder auszuschließen.

1. (Optional) Erweitern Sie **Dateifiltermuster**, um Regex-Muster hinzuzufügen, um bestimmte Dateien ein- oder auszuschließen.

1. (Optional) Um die Zugriffskontrolle auf Dokumentebene zu aktivieren, wählen Sie **Dokumentenzugriff mit ACLs kontrollieren** und geben Sie den Amazon S3 S3-URI Ihrer globalen ACL-Datei ein. Diese Option kann nach der Erstellung nicht geändert werden. Details hierzu finden Sie unter [Document-level Zugriffskontrollen](kb-managed-ds-s3-acl.md).

------
#### [ API ]

Um eine Amazon S3 S3-Datenquelle zu erstellen, senden Sie eine [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html)Anfrage mit einem Build-Time-Endpunkt von Agents for Amazon Bedrock. Das folgende AWS Command Line Interface Beispiel erstellt eine Datenquelle für einen Bucket im selben Konto mit Präfix- und Musterfiltern. Eine Beschreibung der einzelnen Felder finden Sie in der nachfolgenden Referenz zu den Konnektorparametern.

```
aws bedrock-agent create-data-source \
 --name "{{S3-connector}}" \
 --knowledge-base-id "{{your-knowledge-base-id}}" \
 --data-source-configuration file://s3-managed-connector.json
```

Die `s3-managed-connector.json` Datei enthält Folgendes:

```
{
    "type": "MANAGED_KNOWLEDGE_BASE_CONNECTOR",
    "managedKnowledgeBaseConnectorConfiguration": {
        "connectorParameters": {
            "type": "S3",
            "version": "1",
            "connectionConfiguration": {
                "bucketName": "{{my-knowledge-base-bucket}}",
                "bucketOwnerAccountId": "{{123456789012}}"
            },
            "filterConfiguration": {
                "inclusionPrefixes": ["{{documents/}}"],
                "inclusionPatterns": ["{{.*\\.pdf}}", "{{.*\\.txt}}"],
                "exclusionPatterns": ["{{.*\\.tmp}}"]
            },
            "metadataFilesPrefix": "{{metadata/}}"
        }
    }
}
```

Um die Zugriffskontrolle auf Dokumentebene zu aktivieren, setzen Sie `aclEnabled` auf `true` und fügen Sie ein `aclConfiguration` mit hinzu. `globalAccessControlListS3Uri` Siehe [Document-level Zugriffskontrollen](kb-managed-ds-s3-acl.md).

Bei verwalteten Wissensdatenbanken `CreateDataSource` erfolgt der Vorgang asynchron: Der Status der Datenquelle wechselt von `CREATING` zu, `AVAILABLE` wenn der Vorgang abgeschlossen ist.

------

## Connector-Parameter
<a name="kb-managed-config-s3"></a>

Die Datenquellenkonfiguration verwendet die folgenden Konnektorparameter. Um eine Verbindung zu Amazon S3 herzustellen, geben Sie `S3` als Konnektortyp an`connectorParameters`. Informationen zu Feldern, die umbrechen `connectorParameters` (z. B. `deletionProtectionConfiguration` und`mediaExtractionConfiguration`), finden Sie unter[Verbinden einer Datenquelle](kb-managed-connect-ds.md).


**connectionConfiguration**  

| Feld | Erforderlich | Beschreibung | 
| --- | --- | --- | 
| bucketName | Ja | Der Name des Amazon S3-Buckets. | 
| bucketOwnerAccountId | Bedingt | Die AWS Konto-ID des Bucket-Besitzers. Erforderlich für kontoübergreifenden Zugriff. | 


**Filterkonfiguration (optional)**  

| Feld | Erforderlich | Description | 
| --- | --- | --- | 
| inclusionPrefixes | Nein | Liste der Amazon S3 S3-Schlüsselpräfixe, die aufgenommen werden sollen (z. B.documents/). | 
| exclusionPrefixes | Nein | Liste der auszuschließenden Amazon S3 S3-Schlüsselpräfixe (z. B.archive/). | 
| inclusionPatterns | Nein | Liste der regulären Ausdrücke. Es werden nur Objekte aufgenommen, deren Schlüssel mindestens einem Muster entsprechen. | 
| exclusionPatterns | Nein | Liste regulärer Ausdrücke. Objekte, deren Schlüssel einem beliebigen Muster entsprechen, werden nicht aufgenommen. | 
| maxFileSizeInMegaBytes | Nein | Maximale Größe jeder einzelnen Datei, die der Konnektor aufnimmt, in Megabyte. Geben Sie eine numerische Zeichenfolge an (z. B.). "500" Standardeinstellung: "500". | 


**Top-level Konnektorparameter (optional)**  

| Feld | Erforderlich | Description | 
| --- | --- | --- | 
| metadataFilesPrefix | Nein | Das Amazon S3 S3-Präfix, in dem Dokument-Metadatendateien (.metadata.json) gespeichert werden. | 
| aclEnabled | Nein | Auf einstellen, true um die Zugriffskontrolle auf Dokumentebene zu aktivieren. Sie können diese Einstellung nicht ändern, nachdem Sie die Datenquelle erstellt haben. Details hierzu finden Sie unter [Document-level Zugriffskontrollen](kb-managed-ds-s3-acl.md). | 
| aclConfiguration | Bedingt | Enthält globalAccessControlListS3Uri — die Amazon S3 S3-URI einer JSON-Datei, die wichtige Präfixe Zugriffskontrolleinträgen zuordnet. Erforderlich, wenn aclEnabled es isttrue; wird ignoriert, wenn aclEnabled es istfalse. Siehe [Document-level Zugriffskontrollen](kb-managed-ds-s3-acl.md). | 

### Metadaten-Dateien für Dokumente
<a name="kb-managed-s3-metadata-files"></a>

Sie können jedem Dokument Metadaten hinzufügen, indem Sie eine Sidecar-Datei gleichzeitig hochladen. Erstellen Sie für jedes Dokument eine Datei mit `{{filename.extension}}.metadata.json` demselben Amazon S3-Pfad. Die Metadatendatei darf 10 KB nicht überschreiten. Laden Sie zum `report.pdf` Beispiel `report.pdf.metadata.json` nebenbei den folgenden Inhalt hoch:

```
{
    "metadataAttributes": {
        "company": {
            "value": {
                "type": "STRING",
                "stringValue": "BioPharm Innovations"
            }
        },
        "created_date": {
            "value": {
                "type": "NUMBER",
                "numberValue": 20221205
            }
        },
        "author": {
            "value": {
                "type": "STRING",
                "stringValue": "Lisa Thompson"
            }
        }
    }
}
```

Informationen zu den unterstützten Attributdatentypen und den Filteroperatoren, die Sie bei der Abfrage anwenden können, finden Sie unter [Metadaten und Filterung](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html).