Fähigkeiten file-uploads
📦

file-uploads

Sicher

Datei-Uploads und Cloud-S Speicher sicher verwalten

Laden Sie Dateien sicher hoch, ohne Ihre Anwendung zu blockieren oder sensible Daten preiszugeben. Dieses Skill bietet bewährte Muster für vorsignierte URLs, Magic-Byte-Validierung und sichere Cloud-Speicher-Integration.

Unterstützt: Claude Codex Code(CC)
🥉 74 Bronze
1

Die Skill-ZIP herunterladen

2

In Claude hochladen

Gehe zu Einstellungen → Fähigkeiten → Skills → Skill hochladen

3

Einschalten und loslegen

Teste es

Verwendung von "file-uploads". Laden Sie eine 500-MB-Videodatei in den Cloud-Speicher hoch

Erwartetes Ergebnis:

  • 1. Client fordert vorsignierte URLs für Multipart-Upload an
  • 2. Server generiert 5 Upload-Teil-URLs (je 100 MB)
  • 3. Client lädt Teile parallel direkt auf S3 hoch
  • 4. Client ruft Complete-Multipart-Upload-API auf
  • 5. Datei verfügbar unter s3://bucket/videos/user123/video.mp4

Verwendung von "file-uploads". Validieren Sie den hochgeladenen Bilddateityp

Erwartetes Ergebnis:

  • Datei-Header-Bytes geprüft: FF D8 FF (JPEG-Signatur erkannt)
  • Content-Type-Header-Behauptung: image/jpeg - GÜLTIG
  • Dateigröße: 2,3 MB – innerhalb 5-MB-Limit
  • Dateiname bereinigt: 'photo.jpg' -> 'uploads/user123/abc123.jpg'
  • Upload autorisiert und vorsignierte URL zurückgegeben

Sicherheitsaudit

Sicher
v1 • 2/25/2026

This skill is a documentation-only file (SKILL.md) providing guidance on secure file upload handling. Static analysis flagged 'weak cryptographic algorithm' at lines 3 and 26, but both are FALSE POSITIVES. Line 3 contains only a YAML description field, and line 26 is plain documentation text. No actual code execution, network calls, or cryptographic operations exist in this skill.

1
Gescannte Dateien
27
Analysierte Zeilen
1
befunde
1
Gesamtzahl Audits
Probleme mit niedrigem Risiko (1)
Static analysis false positive - weak cryptographic algorithm
The static analyzer flagged 'weak cryptographic algorithm' at SKILL.md:3 and SKILL.md:26. Both are false positives. Line 3 contains only a YAML frontmatter description field mentioning presigned URLs. Line 26 contains plain documentation text. No actual cryptographic code exists in this file.
Auditiert von: claude

Qualitätsbewertung

38
Architektur
100
Wartbarkeit
87
Inhalt
50
Community
100
Sicherheit
91
Spezifikationskonformität

Was du bauen kannst

Datei-Upload-Funktion für Webanwendungen

Erstellen Sie eine sichere Bild-Upload-Funktion für ein Benutzerprofil-System mit automatischer Validierung und Cloud-Speicherung.

Verarbeitung großer Videodateien

Implementieren Sie Multipart-Uploads für Videodateien über 100 MB ohne Server-Speicherprobleme.

Dokumentenmanagementsystem

Erstellen Sie eine sichere Dokumenten-Upload-Pipeline mit Typvalidierung und organisierten Cloud-Speicherpfaden.

Probiere diese Prompts

Grundlegende S3-Upload-Einrichtung
Generieren Sie Code für das Hochladen eines Benutzer-Avatar-Bildes auf S3 mit einer vorsignierten URL. Validieren Sie, dass die Datei ein gültiges Bild ist, indem Sie Magic Bytes verwenden, bevor Sie den Upload zulassen.
Multipart-Upload-Implementierung
Erstellen Sie einen Multipart-Upload-Handler für Dateien größer als 100 MB. Include client-seitiges Chunking, Fortschrittsverfolgung und S3-Multipart-API-Integration.
Sichere Dateinamen-Bereinigung
Schreiben Sie eine Funktion, die hochgeladene Dateinamen bereinigt, um Path-Traversal-Angriffe zu verhindern. Entfernen Sie gefährliche Zeichen, normalisieren Sie Unicode und generieren Sie eindeutige Speicherschlüssel.
Cloudflare R2-Migration
Konvertieren Sie vorhandenen S3-Upload-Code zur Arbeit mit Cloudflare R2. Include Generierung vorsignierter URLs, korrekte Endpunkt-Konfiguration und Kostensenkungstipps.

Bewährte Verfahren

  • Validieren Sie Dateitypen immer mit Magic Bytes, vertrauen Sie niemals auf Dateierweiterungen oder vom Client bereitgestellte Content-Type-Header
  • Verwenden Sie vorsignierte URLs, damit Clients direkt in den Cloud-Speicher hochladen können, und vermeiden Sie Server-Bandbreitenkosten
  • Legen Sie explizite Größenbeschränkungen fest und erzwingen Sie diese sowohl am API-Gateway als auch in Ihren Upload-Handlern

Vermeiden

  • Speichern hochgeladener Dateien auf dem Anwendungsserver-Dateisystem statt im Cloud-Speicher
  • Verwendung des ursprünglichen Dateinamens als Speicherschlüssel ohne Bereinigung
  • Proxying von Datei-Uploads über Ihr Backend-Server statt Verwendung vorsignierter URLs

Häufig gestellte Fragen

Was ist eine vorsignierte URL und warum sollte ich sie verwenden?
Eine vorsignierte URL ist eine zeitlich begrenzte URL, die temporären Zugriff zum Hochladen oder Herunterladen aus dem Cloud-Speicher gewährt. Die Verwendung vorsignierter URLs ermöglicht es Clients, direkt auf S3 oder R2 hochzuladen, wodurch die Serverlast und Bandbreitenkosten reduziert werden, während die Sicherheit durch temporäre Anmeldedaten erhalten bleibt.
Wie validiere ich Dateitypen sicher?
Überprüfen Sie die Magic Bytes der Datei (Header-Signatur), anstatt der Dateierweiterung oder dem Content-Type-Header zu vertrauen. Beispiels beginnen JPEG-Dateien mit den Bytes FF D8 FF. Dies verhindert, dass Angreifer bösartige Dateien mit gefälschten Erweiterungen hochladen.
Welche Größenbeschränkungen sollte ich für Uploads festlegen?
Legen Sie Grenzen basierend auf Ihrem Anwendungsfall fest: Profilbilder (5 MB), Dokumente (25 MB), Videos (500 MB+). Erzwingen Sie Grenzen immer auf mehreren Ebenen: API-Gateway, Anwendungslogik und Cloud-Speicher-Bucket-Richtlinien.
Wie verhindere ich Path-Traversal-Angriffe in Dateinamen?
Verwenden Sie niemals direkt den ursprünglichen Dateinamen. Entfernen Sie alle Pfadkomponenten, entfernen oder ersetzen Sie Sonderzeichen, normalisieren Sie Unicode und erwägen Sie die Generierung zufälliger Speicherschlüssel bei gleichzeitiger Zuordnung ursprünglicher Namen in Ihrer Datenbank.
Was ist Multipart-Upload und wann sollte ich es verwenden?
Multipart-Upload teilt große Dateien in Chunks auf, die parallel hochgeladen werden. Verwenden Sie es für Dateien über 100 MB. Vorteile sind: wiederaufnahmefähige Uploads, parallele Übertragungsgeschwindigkeit und die Möglichkeit, Dateien bis zu 5 TB auf S3 zu verarbeiten.
Kann ich dieses Skill mit Speicheranbietern autres als S3 verwenden?
Ja. Die Muster funktionieren mit jedem S3-kompatiblen Speicher, einschließlich Cloudflare R2, MinIO, DigitalOcean Spaces und Wasabi. Nur die Endpunkt-URL und Anmeldedaten müssen geändert werden.

Entwicklerdetails

Dateistruktur

📄 SKILL.md