Benutzerdefinierte Speicherung
Einen Einrichtungsprompt mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin kopieren.
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
ÜbersichtDie benutzerdefinierte Speicherung in Capgo funktioniert, indem Ihr Bundle an eine externe Stelle hochgeladen wird und Capgo mit der URL zur Verfügung gestellt wird, um darauf zuzugreifen. Die Capgo SDK laden dann Updates direkt aus Ihrer benutzerdefinierten Speicherungsort anstatt aus Capgo's Standard-Cloud-Speicher.
Externer URL-Upload
ÜbersichtDie einfachste Möglichkeit, benutzerdefinierte Speicherung zu verwenden, besteht darin, Ihr Bundle an jede öffentlich zugängliche URL hochzuladen und diese URL an Capgo bereitzustellen.
Grundlegende externe URL-Upload
Abschnitt mit dem Titel “Grundlegende externe URL-Upload”npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zipDiese Kommando sagt Capgo, die Bundle an der angegebenen URL zu referenzieren anstatt es auf Capgo’s Cloudspeicher hochzuladen.
Mit Verschlüsselung
Abschnitt mit dem Titel “Mit Verschlüsselung”Für sichere externe Speicherung 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 integrierte Unterstützung für Amazon S3 und S3-kompatible Speicherdienste. Die CLI kann Ihre Bundle automatisch auf S3 hochladen und Capgo konfigurieren, um die S3-URL zu verwenden.
S3-Upload-Optionen
Sektion 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
Sektion 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
Sektion 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 | Ja |
--s3-bucket-name | Name Ihres S3-Buckets | Ja |
--s3-endpoint | Benutzerdefinierter S3-Endpunkt-URL | No |
--s3-port | S3-Endpunkt-Port | No |
--no-s3-ssl | SSL für S3-Upload deaktivieren | No |
Vorbereitung und Verschlüsselung des Bundles
Abschnitt: Vorbereitung und Verschlüsselung des BundlesBeim Einsatz von benutzerdefinierten Speicher, insbesondere bei Verschlüsselung, müssen Sie Ihre Bundles ordnungsgemäß vorbereiten. Dazu gehört die Erstellung eines Zip-Datei und gegebenenfalls deren Verschlüsselung.
Schritt 1: Erstellen Sie ein Zip-Bundle
Abschnitt: Schritt 1: Erstellen Sie ein Zip-BundleErstellen Sie zunächst eine Zip-Datei Ihres App-Bundles:
npx @capgo/cli@latest bundle zip com.example.app --path ./distDie Kommandozeile gibt den Prüfsummenwert des Zip-Dateis zurück. Sie können diese Prüfsumme verwenden, um das Zip-Datei zu verschlüsseln, wenn erforderlich. Verwenden Sie die --json Option, um eine strukturierte Ausgabe einschließlich der Prüfsumme zu erhalten.
Optionen für das Zip-Kommando
Abschnitt mit dem Titel „Optionen für das Zip-Kommando“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 | Pfad zum Ordner, der komprimiert werden soll (Standardwert: webDir aus capacitor.config) |
--bundle | Version des Bundles, um den Namen des Zip-Dateis zu bestimmen |
--name | Benutzerdefinierter Name für das Zip-Datei |
--json | Ergebnisse in JSON-Format (enthält Prüfsumme) |
--no-code-check | Überprüfung der notifyAppReady()-Aufruf und Indexdatei auslassen |
--key-v2 | Verschlüsselung v2 verwenden |
--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 sollten Sie Ihr Zip-Bundle vor dem Hochladen verschlüsseln:
# 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 Parameter ist erforderlich und sollte die Prüfsumme Ihres Zip-Dateis sein. Sie können die Prüfsumme aus der Ausgabe der zip-Kommandozeile (verwenden Sie --json Option für strukturierte Ausgabe)
Standardmäßig wird die Verschlüsselungskommando die lokale private Signierungschlüssel verwenden. Sie können einen benutzerdefinierten Schlüssel mit der --key oder --key-data benutzen.
Das Verschlüsselungskommando gibt die ivSessionKey erforderlich für den Upload oder die Entschlüsselung.
Verschlüsselungskommando Optionen
Sektion mit dem Titel “Verschlüsselungskommando Optionen”| Option | Beschreibung |
|---|---|
zipPath | Pfad zum zip-Datei zum Verschlüsseln (erforderlich) |
checksum | Prüfsumme der zip-Datei (erforderlich) - erhalten Sie sie mit dem zip-Kommando |
--key | Benutzerdefinierter Pfad für den privaten Signierungschlüssel (optional, verwendet lokalen Schlüssel standardmäßig) |
--key-data | Private Schlüsseldaten direkt (optional) verifizieren |
--json | Die Ergebnisse in JSON-Format ausgeben |
Vollständige Workflow-Beispiele
Abschnitt mit dem Titel "Vollständige Workflow-Beispiele"Beispiel 1: Außenliegender URL mit Verschlüsselung
Abschnitt mit dem Titel "Beispiel 1: Außenliegender URL mit Verschlüsselung"-
Ihre App erstellen:
Terminalfenster npm run build -
Erstelle ein Zip-Paket:
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 Paket:
Terminalfenster npx @capgo/cli@latest bundle encrypt ./com.example.app-1.2.3.zip CHECKSUM_FROM_STEP_2Beachte den
ivSessionKeyaus der Ausgabe. -
Hochladen in Ihr Speicher: Uploaden Sie das verschlüsselte Zip-Datei auf Ihr Hosting-Service.
-
Registrieren Sie sich bei Capgo:
Terminal-Fenster 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
Sektion mit dem Titel „Beispiel 2: Direkter S3-Upload“-
Erstellen Sie Ihre App:
Terminal-Fenster npm run build -
Direkt auf S3 hochladen:
Terminal-Fenster 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:
Terminal-Fenster npm run buildnpx @capgo/cli@latest bundle zip com.example.app --path ./dist --key-v2 -
Das Bundle verschlüsseln:
Terminal-Fenster npx @capgo/cli@latest bundle encrypt ./com.example.app.zip CHECKSUM -
Auf S3 mit Verschlüsselung hochladen:
Terminal-Fenster 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
Sektion mit dem Titel “Sicherheitsüberlegungen”Wenn Sie benutzerdefinierte Speicher verwenden, sollten Sie diese Sicherheitshinweise beachten:
Zugriffssteuerung
Sektion 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 die richtigen CORS-Header für Web-basierte Apps
Verschlüsselung
Sektion mit dem Titel “Verschlüsselung”- Verschlüsseln Sie immer sensible Pakete mit den Capgo-Verschlüsselungstools
- Speichern Sie Verschlüsselungs-Schlüssel sicher und rotieren Sie sie regelmäßig
- Verwenden Sie HTTPS für alle Paket-URLs (erforderlich für mobile und Electron-Apps)
Überwachung
Sektion mit dem Titel “Überwachung”- Überwachung der Zugriffsprotokolle, um ungewöhnliche Herunterladepattern zu erkennen
- Einrichten von Warnungen für fehlgeschlagene Bundle-Downloads
- Regelmäßige Überprüfung Ihrer Speicherberechtigungen
Schulung
Sektion mit dem Titel “Schulung”Häufige Probleme
Sektion mit dem Titel “Häufige Probleme”Bundle wird nicht heruntergeladen:
- Überprüfen Sie, ob die URL öffentlich zugänglich und über HTTPS (für mobile und Electron-Anwendungen erforderlich) ist
- Überprüfen Sie die CORS-Header für Web-Anwendungen
- Stellen Sie sicher, dass die Bundle-Formatierung korrekt ist
Verschlüsselungsfehler:
- Überprüfen Sie das
ivSessionKeyentspricht dem verschlüsselten Bundle - Stellen Sie sicher, dass 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
Sektion mit dem Titel „Debug-Befehle“Bundle-Status überprüfen:
npx @capgo/cli@latest app debugIntegrität des Bundles überprüfen:
npx @capgo/cli@latest bundle listZukünftige Schritte
Seite mit dem Titel 'Zukünftige Schritte'- Über Kanäle um verschiedene Bereitstellungsumgebungen zu verwalten
- Erkunden Updateverhalten um die Anwendung von Updates anzupassen
- Einrichten CI/CD-Integration Zweck: Kurzbeschreibung oder Navigationspunkt auf der Seite des Capgo-Builders / native Cloud-Build-Produktseiten. Rolle: Kurzbeschrifteter UI-Label oder Navigationspunkt. Nachrichtenschlüssel `native_build_feature_ci_cd` (Native Build Feature Ci Cd).
um Ihre Custom Storage-Arbeit zu automatisieren
Fortsetzen von Custom StorageAbschnitt 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 Zuverlässigkeit zur Implementierungsdetail in Zuverlässigkeit, Capgo Sicherheits-Scanner zur Produktworkflow in Capgo Sicherheits-Scanner, Capgo Sicherheit zur Produktworkflow in Capgo Sicherheit, und Capgo Vertrauenszentrum zur Produktworkflow in Capgo Vertrauenszentrum.