Zum Inhalt springen

Sicherheitsaudit

Bitte die KI, die Sicherheitslage deiner App zu überprüfen, befolge die unten stehenden Best Practices und bewahre Secrets auf der Settings-Seite auf.

Die Sicherheit in Proyecta wird durch eine Kombination aus Plattform-Standards, KI-gestützten Reviews und einigen Gewohnheiten gewährleistet, die du dir aneignen solltest. So kannst du das Thema angehen.

Öffne die Command Palette (Cmd+K / Ctrl+K) und wähle Run Security Audit. Dadurch wird ein umfassender Sicherheitsprompt an die KI gesendet, die deinen gesamten Code liest und Schwachstellen mit priorisierten Ergebnissen und konkreten Lösungsvorschlägen aufzeigt.

Der Audit prüft auf:

  • Hardcodierte API-Keys, Tokens oder Passwörter in Quelldateien
  • Mit VITE_ präfixierte Umgebungsvariablen, die Secrets an den Client weitergeben
  • Fehlende serverseitige Eingabevalidierung auf API-Endpunkten
  • Seiten oder API-Endpunkte ohne Authentifizierung
  • Nicht escapte Benutzerinhalte (XSS-Risiken)
  • Schwachstellen in Abhängigkeiten
  • Mixed Content oder hardcodierte http://-URLs
  • Fehlende Validierung bei Datei-Uploads

Du kannst einen Sicherheitsaudit auch manuell über den Chat starten oder ihn auf einen bestimmten Bereich eingrenzen:

  • "Review my checkout flow for security issues"
  • "Check the admin pages — who can access what?"
  • "Look at every endpoint that writes to the database and tell me if any of them are missing authorization"

Secrets sicher aufbewahren

  • Speichere jeden API-Key, jede Datenbank-Zugangsdaten und jeden Drittanbieter-Token im Bereich Umgebungsvariablen auf der Settings-Seite
  • Füge niemals Secrets in Chat-Nachrichten ein oder committe sie in den Code
  • Wenn ein Secret offengelegt wurde, widerrufe es sofort beim jeweiligen Drittanbieter und erstelle ein neues

Zugriff einschränken

  • Implementiere rollenbasierte Berechtigungen in deiner App ("Add admin and member roles. Only admins can access /admin pages.")
  • Beschränke sensible Seiten und Endpunkte auf authentifizierte Benutzer
  • Validiere Benutzereingaben immer serverseitig, niemals nur auf dem Client

HTTPS überall verwenden

  • Alle veröffentlichten Proyecta-Apps werden automatisch über HTTPS bereitgestellt
  • SSL-Zertifikate werden für dich bereitgestellt und erneuert
  • Bei Custom Domains gilt dasselbe, sobald die DNS-Einstellungen korrekt gesetzt sind

Abhängigkeiten aktuell halten

  • Frage die KI regelmäßig: "Check my dependencies for known security vulnerabilities and upgrade the vulnerable ones."
  • Überprüfe, was die KI ändert – Dependency-Upgrades können manchmal Breaking Changes enthalten

Nach größeren Änderungen auditieren

  • Führe einen Audit erneut durch, nachdem du Authentifizierung, Zahlungen, Datei-Uploads oder alles, was Benutzerdaten berührt, hinzugefügt hast
  • Führe vor der ersten Veröffentlichung in die Produktion eine vollständige Prüfung durch
  • HTTPS und Zertifikate für deine *.proyecta.live-Subdomain
  • Umgebungsvariablen – Secrets werden in einem dedizierten Secrets Store gespeichert und mit dem Backend deiner App (Convex) synchronisiert, ohne jemals in deinen Code committet zu werden. Hinweis: Secrets sind für Workspace-Mitglieder mit Projektzugriff sichtbar.
  • Isolierte Laufzeitumgebungen – jedes Projekt läuft in seinem eigenen Container, sodass Probleme in der Entwicklungsumgebung keine anderen Benutzer beeinträchtigen
  • Führe vor der ersten Veröffentlichung einen Audit durch – eine vollständige Prüfung deckt Probleme auf, bevor sie live gehen.
  • Führe den Audit nach größeren Änderungen erneut durch – das Hinzufügen von Authentifizierung, Zahlungen oder Datei-Uploads schafft neue Angriffsflächen.
  • Grenze den Umfang ein – Audits zu spezifischen Bereichen sind schneller und gründlicher als vollständige App-Prüfungen.