S3
Datei-Uploads in Amazon-S3-Buckets starten Agenten zur KI-gestützten Verarbeitung von Dokumenten, Bildern und Datendateien.
Auf dieser Seite
Einrichtung
S3 Bucket erstellen
Erstelle in der AWS Console einen Bucket oder verwende einen vorhandenen. Notiere Bucket-Namen und Region.
Verbindung erstellen
Öffne den Agenten, klicke im Verbindungsflussdiagramm auf Add inbound connector, dann auf Create New Connector und wähle S3.
Konfigurieren, erstellen und Webhook URL sowie Secret Key kopieren
Gib Bucket, Region und AWS-Zugangsdaten sowie optional Prefix-/Suffix-Filter und Include-Content-Einstellungen ein. Klicke auf Create; der Detail-Drawer öffnet sich automatisch und zeigt unter Configuration die Webhook URL und den Secret Key. Kopiere beides. Um die Daten später anzuzeigen, bewege den Mauszeiger im Verbindungsflussdiagramm über die Verbindung und klicke auf das Augensymbol.
S3 Event Notifications einrichten
Konfiguriere den Bucket so, dass er Ereignisse über eine SNS-HTTP-Subscription oder Amazon EventBridge per POST an die Webhook URL sendet. Details folgen weiter unten.
So funktioniert Inbound
S3-Verbindungen empfangen über einen Webhook Ereignisbenachrichtigungen, wenn Objekte im Bucket erstellt werden. Konfiguriere S3 so, dass Ereignisse über eine SNS-HTTP-Subscription oder Amazon EventBridge an die Webhook URL der Verbindung gesendet werden. Ereignisse werden nach Prefix und Suffix gefiltert und an verknüpfte Agenten weitergeleitet.
- Bucket Name: S3 Bucket, der auf Dateiereignisse überwacht wird
- Region: AWS-Region des Buckets
- Key Prefix: (Optional) Nur für Keys auslösen, die mit diesem Prefix beginnen (z. B.
uploads/) - Key Suffix: (Optional) Nur für Keys auslösen, die mit diesem Suffix enden (z. B.
.pdf) - Include Content: Dateiinhalt herunterladen und in die Payload aufnehmen (für Text-/JSON-Dateien)
- Max File Size: Maximale Größe herunterzuladender Dateien, wenn Inhalte einbezogen werden (1-100 MB)
IAM-Berechtigungen
Nur erforderlich, wenn „Include Content“ aktiviert ist:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket/*"
}
]
}Event-Payload
Der Agent erhält Dateimetadaten, ergänzt um S3-Ereignisinformationen:
{
"bucket": "my-bucket",
"key": "uploads/invoice-2024-001.pdf",
"size": 245789,
"etag": "d41d8cd98f00b204e9800998ecf8427e",
"event_name": "ObjectCreated:Put",
"event_time": "2024-01-15T10:30:00.000Z",
"_s3": {
"event_source": "aws:s3",
"aws_region": "us-east-1",
"request_id": "C3D13FE58DE4C810",
"source_ip": "192.0.2.1"
}
}Die _s3-Metadaten enthalten Ereignisquelle, Region, Request-ID und Quell-IP.
Dateiinhalt herunterladen
Ist „Include Content“ aktiviert, werden Text- und JSON-Dateien als UTF-8 dekodiert. Binärdateien werden Base64-kodiert. Dateien über der maximalen Größe werden übersprungen.
{
"bucket": "my-bucket",
"key": "uploads/data.json",
"size": 1234,
"etag": "a1b2c3d4e5f6...",
"event_name": "ObjectCreated:Put",
"event_time": "2024-01-15T10:30:00.000Z",
"content": {
"text": "{\"customer_id\": \"12345\", \"amount\": 234.56}",
"content_type": "application/json",
"size_bytes": 1234,
"encoding": "utf-8"
},
"_s3": { ... }
}Ereignisse filtern
- Object Created (Default): Startet bei Put, Post, Copy und CompleteMultipartUpload
- All Events: Startet zusätzlich bei Lösch- und Wiederherstellungsereignissen
Verwende Prefix-/Suffix-Filter, um unerwünschte Dateien nicht zu verarbeiten. Nicht passende Ereignisse werden ohne Meldung ignoriert.
S3 Event Notifications einrichten
Konfiguriere S3 so, dass Ereignisse an die Verbindung gesendet werden. Zwei Optionen werden unterstützt:
Option 1: SNS HTTP Subscription (empfohlen)
# 1. Create SNS Topic
aws sns create-topic --name s3-events
# 2. Add HTTP Subscription (your connector webhook URL)
aws sns subscribe \
--topic-arn arn:aws:sns:us-east-1:123456789:s3-events \
--protocol https \
--notification-endpoint '<connector-url>?secret=<secret-key>'
# 3. Configure S3 bucket notifications
aws s3api put-bucket-notification-configuration \
--bucket my-bucket \
--notification-configuration '{
"TopicConfigurations": [{
"TopicArn": "arn:aws:sns:us-east-1:123456789:s3-events",
"Events": ["s3:ObjectCreated:*"]
}]
}'Hänge den Secret Key der Verbindung als Query-Parameter ?secret=... an den Subscription Endpoint an. Die Verbindung prüft außerdem die AWS-Signatur, verarbeitet die Bestätigung der Subscription und entpackt Benachrichtigungs-Wrapper.
Option 2: Amazon EventBridge
# 1. Enable EventBridge on your S3 bucket
aws s3api put-bucket-notification-configuration \
--bucket my-bucket \
--notification-configuration '{
"EventBridgeConfiguration": {}
}'
# 2. Create EventBridge rule with API Destination target using:
# <connector-url>?secret=<secret-key>
# (Configure via AWS Console or CloudFormation)Verwende die authentifizierte Webhook URL mit ?secret=... als API Destination Endpoint. EventBridge bietet mehr Filteroptionen und lässt sich in weitere AWS Services integrieren.