Custom Storage
Ein Setup-Prompt kopieren mit den Installations-Schritten und der vollständigen Markdown-Anleitung für diesen Plugin.
Capgo unterstützt benutzerdefinierte Speichersysteme für Ihre App-Bundles, sodass Sie Ihre Updates auf Ihrer eigenen Infrastruktur oder auf Diensten Dritter hosten können. Dies ist insbesondere nützlich für Organisationen mit spezifischen Sicherheitsanforderungen, Compliance-Anforderungen oder bestehender Speichereinrichtungen.
Übersicht
ÜbersichtsabschnittBenutzerdefinierte Speicherung in Capgo funktioniert, indem Sie Ihr Bundle an eine externe Stelle hochladen und Capgo die URL mitteilen, über die es abgerufen werden kann. Die Capgo SDK werden dann die Updates direkt von Ihrem benutzerdefinierten Speicherort herunterladen, anstatt von Capgo’s Standard-Cloud-Speicher.
Externes URL-Upload
Abschnitt mit dem Titel „Externes URL-Upload“Der einfachste Weg, benutzerdefinierte Speicherung zu verwenden, besteht darin, Ihr Bundle an eine öffentlich zugängliche URL hochzuladen und diese URL an Capgo weiterzugeben.
Grundlegender externes URL-Upload
Abschnitt mit dem Titel „Grundlegender externes URL-Upload“npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zipDiese Kommando sagt Capgo an, auf die im angegebenen URL befindliche Bundle zu verweisen anstatt es auf Capgo’s Cloudspeicher hochzuladen.
Mit Verschlüsselung
Abschnitt mit dem Titel „Mit Verschlüsselung“Für sicheren externen Speicher können Sie Ihr Bundle verschlüsseln und die Entschlüsselungsschlüssel bereitstellen:
npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zip --iv-session-key YOUR_IV_SESSION_KEYS3-Integration
Abschnitt mit dem Titel „S3-Integration“Capgo bietet eine integrierte Unterstützung für Amazon S3 und S3-kompatible Speicherdienste. CLI kann automatisch Ihr Bundle auf S3 hochladen und Capgo konfigurieren, um die S3-URL zu verwenden.
S3-Upload-Optionen
Abschnitt mit dem Titel “S3-Upload-Optionen”npx @capgo/cli@latest bundle upload \ --s3-region us-east-1 \ --s3-apikey YOUR_ACCESS_KEY \ --s3-apisecret YOUR_SECRET_KEY \ --s3-bucket-name your-bucket-nameS3-Konfiguration abschließen
Abschnitt mit dem Titel “S3-Konfiguration abschließen”Für S3-kompatible Dienste oder benutzerdefinierte Endpunkte:
npx @capgo/cli@latest bundle upload \ --s3-region us-east-1 \ --s3-apikey YOUR_ACCESS_KEY \ --s3-apisecret YOUR_SECRET_KEY \ --s3-endpoint https://s3.your-provider.com \ --s3-bucket-name your-bucket-name \ --s3-port 443 \ --no-s3-ssl # Only if your endpoint doesn't support SSLS3-Konfigurationsparameter
Abschnitt mit dem Titel “S3-Konfigurationsparameter”| Parameter | Beschreibung | Erforderlich |
|---|---|---|
--s3-region | AWS-Region für Ihren S3-Bucket | Ja |
--s3-apikey | S3-Zugriffschlüssel-ID | Ja |
--s3-apisecret | S3-Schlüssel-Sicherheitscode | Ja |
--s3-bucket-name | Name Ihres S3-Buckets | Ja |
--s3-endpoint | Benutzerdefinierter S3-Endpunkt-URL | Nein |
--s3-port | Port für S3-Endpunkt | Nein |
--no-s3-ssl | SSL für S3-Upload deaktivieren | Nein |
Vorbereitung und Verschlüsselung des Bundles
Abschnitt mit dem Titel “Vorbereitung und Verschlüsselung des Bundles”Wenn Sie eine benutzerdefinierte Speicherung verwenden, insbesondere mit Verschlüsselung, müssen Sie Ihre Bundles ordnungsgemäß vorbereiten. Dazu gehört die Erstellung eines Zip-Ordners und gegebenenfalls dessen Verschlüsselung.
Schritt 1: Erstellung eines Zip-Bundles
Abschnitt mit dem Titel “Schritt 1: Erstellung eines Zip-Bundles”Erstellen Sie zunächst einen Zip-Ordner Ihres App-Bundles:
npx @capgo/cli@latest bundle zip com.example.app --path ./distDie zip-Kommandozeile gibt den Prüfsummenwert des Zip-Ordners aus. Sie können diese Prüfsumme verwenden, um den Zip-Ordner gegebenenfalls zu verschlüsseln. --json Option, um strukturierte Ausgabe einschließlich des Prüfsummenwertes zu erhalten.
Zip-Befehlsoptionen
Sektion mit dem Titel “Zip-Befehlsoptionen”npx @capgo/cli@latest bundle zip [appId] \ --path ./dist \ --bundle 1.2.3 \ --name myapp-v1.2.3 \ --json \ --no-code-check \ --key-v2 \ --package-json ../../package.json,./package.json| Option | Beschreibung |
|---|---|
--path | Weg zum Ordner, der komprimiert werden soll (Standardwert: webDir aus capacitor.config) |
--bundle | Bundle-Version-Nummer zur Namensgebung des Zip-Dateis |
--name | Benutzerdefinierter Name für das Zip-Datei |
--json | Ausgabeergebnisse in JSON-Format (einschließlich Prüfsummenwertes) |
--no-code-check | Überspringen der Überprüfung auf die notifyAppReady()-Aufruf und Indexdatei |
--key-v2 | Verschlüsselung v2 verwenden |
--package-json | Pfade zu package.json-Dateien für Monorepos (komma getrennt) |
Schritt 2: Das Bundle verschlüsseln (Optional)
Schritt 2: Das Bundle verschlüsseln (Optional)Für eine erhöhte Sicherheit verschlüsseln Sie Ihr Zip-Bundle vor dem Hochladen:
# Using default local keynpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM
# Using custom key filenpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM --key ./path/to/.capgo_key_v2
# Using key data directlynpx @capgo/cli@latest bundle encrypt ./myapp.zip CHECKSUM --key-data "PRIVATE_KEY_CONTENT"Der CHECKSUM Dieser Parameter ist erforderlich und sollte der Prüfsumme Ihres Zip-Dateis sein. Sie können die Prüfsumme aus dem Ausgabe des zip-Befehls (nutzen Sie --json Der Befehl zum Verschlüsseln wird standardmäßig Ihre lokale private Signierungsdatei verwenden. Sie können eine benutzerdefinierte Datei mithilfe des
__CAPGO_KEEP_0__ --key __CAPGO_KEEP_1__ --key-data optionen.
Die Verschlüsselungskommando gibt die ivSessionKey für das Hochladen oder die Entschlüsselung erforderlichen
Verschlüsselungskommando-Optionen
Abschnitt mit dem Titel “Verschlüsselungskommando-Optionen”| Option | Beschreibung |
|---|---|
zipPath | Pfad zum zip-Datei zum Verschlüsseln (erforderlich) |
checksum | Prüfsumme der zip-Datei (erforderlich) - Hol sie sich vom zip-Kommando |
--key | Benutzerdefinierter Pfad für die private Signierungsdatei (optional, verwendet lokale Datei standardmäßig) |
--key-data | Private Signierungsdatei-Daten direkt (optional) |
--json | Ergebnisse in JSON-Format ausgeben |
Vollständige Workflow-Beispiele
Abschnitt mit dem Titel “Vollständige Workflow-Beispiele”Beispiel 1: Außenliegende URL mit Verschlüsselung
Abschnitt mit dem Titel “Beispiel 1: Außenliegende URL mit Verschlüsselung”-
Bauen Sie Ihr App:
Terminal-Fenster npm run build -
Erstelle ein Zip-Bundle:
Terminalfenster npx @capgo/cli@latest bundle zip com.example.app --path ./dist --bundle 1.2.3Beachte den vom Befehl zurückgegebenen Prüfsummenwert.
-
Verschlüssle das Bundle:
Terminalfenster npx @capgo/cli@latest bundle encrypt ./com.example.app-1.2.3.zip CHECKSUM_FROM_STEP_2Beachte den
ivSessionKeyaus der Ausgabe. -
Hochladen in Ihren Speicher: Hochladen Sie das verschlüsselte Zip-Datei in Ihr Hosting-Dienst.
-
Registriere sich bei Capgo:
Terminalfenster npx @capgo/cli@latest bundle upload \--external https://your-cdn.com/bundles/com.example.app-1.2.3.zip \--iv-session-key IV_SESSION_KEY_FROM_STEP_3
Beispiel 2: Direkter S3-Upload
Abschnitt mit dem Titel „Beispiel 2: Direkter S3-Upload“-
Ihre App erstellen:
Terminalfenster npm run build -
Direkt auf S3 hochladen:
Terminalfenster npx @capgo/cli@latest bundle upload \--s3-region us-west-2 \--s3-apikey YOUR_ACCESS_KEY \--s3-apisecret YOUR_SECRET_KEY \--s3-bucket-name your-app-bundles \--channel Production
Beispiel 3: S3 mit Verschlüsselung
Abschnitt mit dem Titel „Beispiel 3: S3 mit Verschlüsselung“-
Build und zip: __CAPGO_KEEP_0__
Terminalfenster npm run buildnpx @capgo/cli@latest bundle zip com.example.app --path ./dist --key-v2 -
Das Bundle verschlüsseln: __CAPGO_KEEP_0__
Terminalfenster npx @capgo/cli@latest bundle encrypt ./com.example.app.zip CHECKSUM -
Mit Verschlüsselung auf S3 hochladen: __CAPGO_KEEP_0__
Terminalfenster npx @capgo/cli@latest bundle upload \--s3-region us-west-2 \--s3-apikey YOUR_ACCESS_KEY \--s3-apisecret YOUR_SECRET_KEY \--s3-bucket-name your-app-bundles \--iv-session-key IV_SESSION_KEY_FROM_STEP_2 \--channel Production
Sicherheitshinweise
Abschnitt mit dem Titel „Sicherheitshinweise“Wenn Sie benutzerdefinierte Speicher verwenden, sollten Sie diese Sicherheitshinweise beachten: __CAPGO_KEEP_1__
Zugriffssteuerung
Abschnitt: Zugriffssteuerung- Stellen Sie sicher, dass Ihre Speicher-URLs für Ihre App-Benutzer zugänglich sind, aber nicht öffentlich auffindbar sind
- Verwenden Sie bei Bedarf signierte URLs oder Token-basierte Authentifizierung
- Implementieren Sie korrekte CORS-Header für Web-basierte Apps
Verschlüsselung
Abschnitt: Verschlüsselung- Verschlüsseln Sie alle sensiblen Pakete immer mit den Capgo-Verschlüsselungstools
- Speichern Sie Verschlüsselungsschlüssel sicher und rotieren Sie sie regelmäßig
- Verwenden Sie HTTPS für alle Paket-URLs (erforderlich für mobile und Electron-Apps)
Überwachung
Abschnitt: Überwachung- Überwachen Sie die Zugriffsprotokolle, um ungewöhnliche Herunterladepattern zu erkennen
- Einrichten Sie Benachrichtigungen für fehlgeschlagene Bundle-Downloads
- Regelmäßig Ihre Speicherberechtigungen überprüfen
Fehlersuche
Abschnitt mit dem Titel “Fehlersuche”Häufige Probleme
Abschnitt mit dem Titel “Häufige Probleme”Bundle wird nicht heruntergeladen:
- Überprüfen Sie, ob die URL öffentlich zugänglich und über HTTPS (erforderlich für mobile und Electron-Apps) ist
- Überprüfen Sie die CORS-Kopfzeilen für Web-Apps
- Stellen Sie sicher, dass die Bundle-Formatierung korrekt ist
Verschlüsselungsfehler:
- Überprüfen Sie das
ivSessionKeyentspricht dem verschlüsselten Bundle - Überprüfen Sie, ob das Bundle mit der richtigen Schlüssel verschlüsselt wurde
- Stellen Sie sicher, dass für neue Bundle die Verschlüsselung v2 verwendet wird
S3-Upload-Fehler:
- Überprüfen Sie Ihre S3-Anmeldeinformationen und Berechtigungen
- Überprüfen Sie die Bucket-Politik und die CORS-Konfiguration
- Stellen Sie sicher, dass die angegebene Region korrekt ist
Debug-Befehle
Abschnitt mit dem Titel “Debug-Befehle”Überprüfen Sie den Status des Bundles:
npx @capgo/cli@latest app debugÜberprüfen Sie die Integrität der Pakete:
npx @capgo/cli@latest bundle listNächste Schritte
Abschnitt mit dem Titel „Nächste Schritte“- Über Kanäle um verschiedene Bereitstellungsumgebungen zu verwalten
- Erkunden Verhalten aktualisieren um anzupassen, wie Aktualisierungen angewendet werden
- Einrichten CI/CD-Integration um Ihre benutzerdefinierte Speicherablaufautomatisieren
Weitermachen von Custom Storage
Abschnitt mit dem Titel “Weitermachen von Custom Storage”Wenn Sie Custom Storage zur Planung von Sicherheit und Compliance verwenden, verbinden Sie es mit Verschlüsselung für die Implementierungsdetails in Verschlüsselung, Konzformität für die Implementierungsdetails in Konformität, Capgo Sicherheits-Scanner für den Produktworkflow in Capgo Sicherheits-Scanner, Capgo Sicherheit für den Produktworkflow in Capgo Sicherheit, und Capgo Vertrauenszentrum für den Produktworkflow in Capgo Vertrauenszentrum.