カスタム ストレージ
このプラグインのインストール手順とフルマークダウンガイドを含むセットアップコマンドをコピーしてください。
Capgo supports custom storage solutions for your app bundles, allowing you to host your updates on your own infrastructure or third-party storage services. This is particularly useful for organizations with specific security requirements, compliance needs, or existing storage infrastructure.
__CAPGO_KEEP_0__
概要Capgoのカスタムストレージでは、バンドルを外部の場所にアップロードし、CapgoにアクセスするためのURLを提供することで機能します。 Capgo SDKは、Capgoのデフォルトのクラウドストレージではなく、カスタムストレージの場所から直接更新をダウンロードします。
The simplest way to use custom storage is by uploading your bundle to any publicly accessible URL and providing that URL to Capgo.
外部URLアップロード
基本的な外部URLアップロードセクションnpx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zipCapgoに指定されたURLでバンドルを参照するように指示します。Capgoのクラウドストレージにアップロードするのではなく。
暗号化
基本的な暗号化セクション安全な外部ストレージのために、バンドルを暗号化し、復号化キーを提供できます。
npx @capgo/cli@latest bundle upload --external https://your-domain.com/bundles/v1.2.3.zip --iv-session-key YOUR_IV_SESSION_KEYS3統合
基本的なS3統合セクションCapgoはAmazon S3とS3互換ストレージサービスに対して組み込みでサポートしています。CLIは自動的にバンドルをS3にアップロードし、CapgoをS3 URLで設定します。
S3アップロードオプション
S3アップロードオプションのセクション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設定が完了
S3設定が完了のセクションS3互換サービスまたはカスタムエンドポイントの場合:
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設定パラメータ
S3設定パラメータのセクション| パラメーター | 説明 | 必須 |
|---|---|---|
--s3-region | __CAPGO_KEEP_0__エリアのS3バケット | はい |
--s3-apikey | __CAPGO_KEEP_0__S3アクセスキーID | はい |
--s3-apisecret | __CAPGO_KEEP_0__S3シークレットアクセスキー | はい |
--s3-bucket-name | __CAPGO_KEEP_0__のS3バケット名 | はい |
--s3-endpoint | __CAPGO_KEEP_0__カスタムS3エンドポイントURL | No |
--s3-port | S3 エンドポイントのポート | No |
--no-s3-ssl | S3 アップロード用に SSL を無効にする | No |
バンドル作成と暗号化
バンドル作成と暗号化のセクションカスタムストレージを使用する場合、特に暗号化を使用する場合、バンドルを適切に準備する必要があります。これには、zip ファイルを作成し、オプションで暗号化することが含まれます。
ステップ 1: Zip バンドルを作成する
ステップ 1: Zip バンドルを作成するのセクション最初に、zip ファイルを作成してアプリケーションバンドルを作成してください:
npx @capgo/cli@latest bundle zip com.example.app --path ./distzipコマンドはzipファイルのチェックサムを返します。必要に応じてzipファイルを暗号化するために、このチェックサムを使用できます。必要に応じてzipファイルを暗号化するために、このチェックサムを使用できます。 --json オプションを使用して、構造化された出力、チェックサムを含む。
Zipコマンドオプション
「Zipコマンドオプション」のセクション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| オプション | パス |
|---|---|
--path | Path to the folder to zip (defaults to webDir from capacitor.config) |
--bundle | バンドルバージョン番号 |
--name | カスタム名 |
--json | JSON形式で出力します (チェックサムを含みます) |
--no-code-check | notifyAppReady()の呼び出しとindexファイルのチェックをスキップします |
--key-v2 | 暗号化 v2 を使用します |
--package-json | モノレポ用のpackage.jsonファイルのパス (カンマで区切る) |
ステップ 2: バンドルを暗号化 (任意)
ステップ 2: バンドルを暗号化 (任意) のセクションアップロードする前に、zip バンドルを暗号化してセキュリティを高めます:
# 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"The CHECKSUM パラメータは必須です。zipファイルのチェックサムでなければなりません。zipコマンドの出力からチェックサムを取得できます (構造化された出力用のオプションを使用してください)。 --json parameter is required and should be the checksum of your zip file. You can get the checksum from the zip command output (use option for structured output).
デフォルトでは、エンコード コマンドはローカル プライベート署名 キーを使用します。カスタム キーを指定するには、 --key 、 --key-data オプションを使用します。
エンコード コマンドは、 ivSessionKey アップロードまたは復号化に必要な
エンコード コマンド オプション
セクション| オプション | 説明 |
|---|---|
zipPath | エンコード対象の zip ファイルのパス (必須) |
checksum | zip コマンドから取得する zip ファイルのチェックサム (必須) |
--key | プライベート署名 キーのカスタム パス (任意、デフォルトではローカル キーを使用) |
--key-data | プライベート署名鍵データを直接指定 (任意) |
--json | 出力結果を JSON 形式で出力 |
ワークフロー例
「ワークフロー例」セクション「外部 URL にエンコード」
セクション-
アプリをビルド:
ターミナル画面 npm run build -
zipアーカイブを作成する:
ターミナル画面 npx @capgo/cli@latest bundle zip com.example.app --path ./dist --bundle 1.2.3このコマンドの返されたチェックサムを注意してください。
-
アーカイブを暗号化する:
ターミナル画面 npx @capgo/cli@latest bundle encrypt ./com.example.app-1.2.3.zip CHECKSUM_FROM_STEP_2Note the
ivSessionKeyから -
の出力から。 __CAPGO_KEEP_0__に登録する
-
Capgo
ターミナル画面 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
例2:S3への直接アップロード
例2:S3への直接アップロード-
アプリをビルドする:
ターミナル画面 npm run build -
S3に直接アップロードする:
ターミナル画面 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
例 3: S3 での暗号化
例 3: S3 での暗号化というタイトルのセクション-
ビルドと ZIP:
ターミナル画面 npm run buildnpx @capgo/cli@latest bundle zip com.example.app --path ./dist --key-v2 -
バンドルを暗号化:
ターミナル画面 npx @capgo/cli@latest bundle encrypt ./com.example.app.zip CHECKSUM -
暗号化された S3 へのアップロード:
ターミナル画面 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
セキュリティ上の考慮事項
セキュリティに関する考慮事項カスタム ストレージを使用する場合、次のセキュリティベスト プラクティスを考慮してください
アクセス制御
セクションのタイトル “アクセス制御”- アプリのユーザーにストレージ URL をアクセス可能にするが、パブリックに検出されないようにする
- 署名 URL またはトークン ベースの認証を使用する
- Web ベースのアプリの場合、適切な CORS ヘッダーを実装する
- 敏感なバンドルを常に Capgo の暗号化ツールで暗号化する
- 暗号化キーを安全に保存し、定期的にローテートする
- すべてのバンドル URL に HTTPS を使用する (モバイルと Electron アプリ用に必須)
- アクセスログを監視して不正なダウンロードパターンを検出する
- 失敗したバンドルダウンロードのアラートを設定する
- ストレージ権限を定期的に検証する
トラブルシューティング
セクション「トラブルシューティング」一般的な問題
セクション「一般的な問題」バンドルがダウンロードされない:
- URLがパブリックにアクセス可能でHTTPSを使用していることを確認する (モバイルおよびElectronアプリ用)
- Webアプリ用のCORSヘッダーを確認する
- __CAPGO_KEEP_0__のバンドル形式が正しいことを確認する
__CAPGO_KEEP_1__エラー:
- __CAPGO_KEEP_2__が正しいことを確認する
ivSessionKey__CAPGO_KEEP_3__が暗号化されたバンドルと一致することを確認する - __CAPGO_KEEP_4__で暗号化されたバンドルが正しい鍵で暗号化されたことを確認する
- __CAPGO_KEEP_5__を新しいバンドルに使用することを確認する
__CAPGO_KEEP_6__アップロード失敗:
- __CAPGO_KEEP_7__の資格情報と権限を確認する
- __CAPGO_KEEP_8__のポリシーとCORS構成を確認する
- __CAPGO_KEEP_9__が正しいことを確認する
__CAPGO_KEEP_10__
__CAPGO_KEEP_11__バンドルステータスを確認:
npx @capgo/cli@latest app debugバンドル完整性を検証:
npx @capgo/cli@latest bundle list次のステップ
「次のステップ」のセクション- について学ぶ チャンネル 異なるデプロイ環境を管理する
- 探索 アップデートの動作をカスタマイズする アップデートの適用方法をカスタマイズする
- 設定 CI/CD統合 カスタムストレージのワークフローを自動化する
カスタムストレージから続ける
「カスタムストレージから続ける」のセクション「カスタムストレージから続ける」のセクション カスタムストレージを使用している場合 カスタムストレージ セキュリティとコンプライアンスを計画するために、カスタムストレージを 暗号化 Compliance for the implementation detail in Compliance, Capgo for the product workflow in Capgo Security Scanner, Capgo for the product workflow in Capgo Security, and Capgo for the product workflow in Capgo Trust Center.