Custom Storage
Kopieren Sie einen Einrichtungsprompt mit den Installationsanweisungen und der vollständigen Markdown-Guideline 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
Abschnitt mit dem Titel „Übersicht“Benutzerdefinierte Speicherung in Capgo funktioniert, indem Sie Ihr Bundle an einen externen Ort hochladen und Capgo die URL mitteilen, über die es abgerufen werden kann. Die Capgo SDK laden dann Updates direkt aus Ihrem benutzerdefinierten Speicherort und nicht aus Capgo’s Standard-Cloud-Speicher.
Externes URL-Upload
Abschnitt: Externes URL-UploadDer einfachste Weg, benutzerdefinierte Speicherung zu verwenden, besteht darin, Ihr Bundle an jede öffentlich zugängliche URL hochzuladen und diese URL Capgo bereitzustellen.
Grundlegender externer URL-Upload
Terminal-Fensternpx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zipThis command tells Capgo to reference the bundle at the specified URL instead of uploading it to Capgo’s cloud storage.
Abschnitt: Mit Verschlüsselung
Für sichere externe Speicherung können Sie Ihr Bundle verschlüsseln und die Entschlüsselungsschlüssel bereitstellen:Terminal-Fenster
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 Ihre Bundle automatisch auf S3 hochladen und Capgo so konfigurieren, dass es die S3-URL verwendet.
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-nameVollständige S3-Konfiguration
Abschnitt mit dem Titel „Vollständige S3-Konfiguration“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üsselzufahrtschlüssel | Ja |
--s3-bucket-name | Name Ihres S3-Ordners | 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 von Bundeln
Abschnitt mit dem Titel „Vorbereitung und Verschlüsselung von Bundeln“Wenn Sie benutzerdefinierte Speicher verwenden, insbesondere mit Verschlüsselung, müssen Sie Ihre Bundel ordnungsgemäß vorbereiten. Dazu gehört die Erstellung eines Zip-Ordners und gegebenenfalls dessen Verschlüsselung.
Schritt 1: Erstellen Sie ein Zip-Bundle
Abschnitt mit dem Titel “Schritt 1: Erstelle ein Zip-Paket”Erstelle zunächst ein Zip-Datei Ihres App-Paketes:
npx @capgo/cli@latest bundle zip com.example.app --path ./distDie Zip-Befehlsausgabe enthält den Prüfsummenwert der Zip-Datei. Sie können diesen Wert verwenden, um die Zip-Datei zu verschlüsseln, wenn erforderlich. Verwenden Sie die Option, um eine strukturierte Ausgabe einschließlich der Prüfsumme zu erhalten. --json Terminal-Fenster
Zur Vervollständigung in die Zwischenablage kopieren
Optionnpx @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| Terminal-Fenster | Zur Vervollständigung in die Zwischenablage kopieren |
|---|---|
--path | Pfad zum Ordner zum Komprimieren (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 (enthält Prüfsumme) |
--no-code-check | Überspringen der Überprüfung auf notifyAppReady()-Aufruf und Indexdatei |
--key-v2 | Verwendung von Verschlüsselung v2 |
--package-json | Pfade zu package.json-Dateien für monorepos (getrennt durch Komma) |
Schritt 2: Verschlüsselung des Bundles (Optional)
Abschnitt mit dem Titel “Schritt 2: Verschlüsselung des Bundles (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 Parameter ist erforderlich und sollte der Prüfsumme Ihres Zip-Dateis sein. Sie können die Prüfsumme aus dem Ausgabe des zip-Befehls (benutzen Sie die CHECKSUM Option für strukturierte Ausgabe). --json Standardmäßig wird der Verschlüsselungsbefehl Ihre lokale private Signierungsdatei verwenden. Sie können eine benutzerdefinierte Datei mit der
oder --key Option angeben. --key-data Der Verschlüsselungsbefehl wird die
erforderlich für den Upload oder die Entschlüsselung. ivSessionKey Verschlüsselungsbefehlsoptionen
Abschnitt mit dem Titel “Verschlüsselungsbefehlsoptionen”
Option| Beschreibung | Parameter ist erforderlich und sollte die Prüfsumme Ihres Zip-Dateis sein. Sie können die Prüfsumme aus dem Ausgabe des zip-Befehls (benutzen Sie die --output für strukturierte Ausgabe). |
|---|---|
zipPath | Pfad zum zip-Datei zum Verschlüsseln (erforderlich) |
checksum | Prüfsumme der zip-Datei (erforderlich) - erhalten Sie sie mit dem zip-Befehl |
--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ändiges Workflow-Beispiel
Abschnitt mit dem Titel „Vollständiges Workflow-Beispiel“Beispiel 1: Außereinladende URL mit Verschlüsselung
Sektion mit dem Titel „Beispiel 1: Außereinladende URL mit Verschlüsselung“-
Deine App erstellen:
Terminal-Fenster npm run build -
Eine Zip-Bundle erstellen:
Terminal-Fenster npx @capgo/cli@latest bundle zip com.example.app --path ./dist --bundle 1.2.3Beachten Sie den von diesem Befehl zurückgegebenen Prüfsummenwert.
-
Das Bundle verschlüsseln:
Terminal-Fenster npx @capgo/cli@latest bundle encrypt ./com.example.app-1.2.3.zip CHECKSUM_FROM_STEP_2Beachten Sie
ivSessionKeyaus der Ausgabe. -
Hochladen Sie Ihr Speicher: Laden Sie das verschlüsselte Zip-Datei hoch zu Ihrem Hosting-Dienst.
-
Registrieren Sie 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”-
Bauen Sie Ihr App:
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“-
Bauen und zippen:
Terminalfenster npm run buildnpx @capgo/cli@latest bundle zip com.example.app --path ./dist --key-v2 -
Das Bundle verschlüsseln:
Terminalfenster npx @capgo/cli@latest bundle encrypt ./com.example.app.zip CHECKSUM -
Mit Verschlüsselung 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 \--iv-session-key IV_SESSION_KEY_FROM_STEP_2 \--channel Production
Sicherheitsüberlegungen
Abschnitt mit dem Titel „Sicherheitsüberlegungen“Wenn Sie benutzerdefinierte Speicher verwenden, sollten Sie diese Sicherheitshinweise berücksichtigen:
Zugriffssteuerung
Abschnitt mit dem Titel „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 mit dem Titel „Verschlüsselung“- Sensible Bundles immer mit den Capgo Verschlüsselungstools verschlüsseln
- Sichere Speicherung und regelmäßige Rotation von Verschlüsselungsschlüsseln
- Verwenden Sie HTTPS für alle Bundle-URLs (erforderlich für mobile und Electron-Anwendungen)
Überwachung
Abschnitt mit dem Titel „Überwachung“- Zugriffsprotokolle überwachen, um ungewöhnliche Downloadmuster zu erkennen
- Benachrichtigungen für fehlgeschlagene Bundle-Downloads einrichten
- Regelmäßige Überprüfung von Speicherberechtigungen
Fehlersuche
Abschnitt mit dem Titel „Fehlersuche“Häufige Probleme
Abschnitt mit dem Titel „Häufige Probleme“Bundle nicht herunterladen:
- Stellen Sie sicher, dass die URL öffentlich zugänglich und über HTTPS (erforderlich für mobile und Electron-Anwendungen) ist
- Überprüfen Sie die CORS-Kopfzeilen für Web-Anwendungen
- Stellen Sie sicher, dass die Bundle-Formatierung korrekt ist
Verschlüsselungsfehler:
- Stellen Sie sicher, dass
ivSessionKeysich mit dem verschlüsselten Bundle übereinstimmt - Überprüfen Sie, ob das Bundle mit der richtigen Schlüssel verschlüsselt wurde
- Stellen Sie sicher, dass Verschlüsselung v2 für neue Bundle verwendet wird
S3-Upload-Fehler:
- Überprüfen Sie Ihre S3-Zugangsdaten 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 des Bundles:
npx @capgo/cli@latest bundle listNächste Schritte
Abschnitt mit dem Titel “Nächste Schritte”- Machen Sie sich mit … vertraut Kanäle um verschiedene Bereitstellungsumgebungen zu verwalten
- Erkunden Updateverhalten um zu konfigurieren, wie Updates angewendet werden
- Einrichten CI/CD-Integration um Ihre benutzerdefinierte Speicherablaufautomatisieren
Fortsetzen von Custom Storage
Sektion mit dem Titel “Fortsetzen von Custom Storage”Wenn Sie Custom Storage verwenden Custom Storage um Sicherheit und Compliance zu planen, verbinden Sie es mit Verschlüsselung für die Implementierungsdetails in Verschlüsselung Kongruenz für die Implementierungsdetails in Kongruenz Capgo Sicherheits-Scanner für den Produktworkflow in Capgo Sicherheits-Scanner Capgo Sicherheit für den Produktworkflow in Capgo Sicherheit, und Capgo Trust Center für den Produktworkflow in Capgo Trust Center.