シークレットをCI/CDパイプラインで効果的に保護するには、以下の方法を実践する必要があります。 context
- 環境変数を使用します。 そして 安全なセキュアストレージ シークレットを安全に保存するために
- アクセスを制限する 必要な特権のみを付与し、シークレットを定期的にローテートする
- シークレットのスキャンを自動化する ツール
git-secretsまたはtruffleHog漏洩を早期に検出するために - CI/CDツールを活用する 例えば GitHub アクション, GitLab CI, または Jenkins 組み込みのシークレット管理機能を使用します。
- 詳細なログを使用してシークレットの使用を監視および検証します。 共通のCI/CDシークレット
__CAPGO_KEEP_0__ キー
- API keys
- 暗号化キー
- 認証トークン
- CI/CD Pipelinesでシークレットを管理する
- SSL証明書
人気のあるシークレット管理プラットフォーム
| プラットフォーム | 機能 | 最適 |
|---|---|---|
| HashiCorp Vault | ダイナミックシークレット、暗号化、アクセス制御 | 大規模オペレーション |
| AWSシークレットマネージャー | AWS統合、自動ローテーション | AWS中心のセットアップ |
| Azure Key Vault | 証明書の取り扱い、キー回転 | Microsoft環境 |
これらの慣行を遵守し、適切なツールを使用することで、CI/CDパイプラインを保護し、安全なワークフローを維持できます。
シークレットのセキュリティガイドライン
Codeにシークレットを含めない
- 使用 環境変数を使用して、敏感情報を管理します。 シークレットを安全な
- シークレットを格納するための 目的のために設計された 安全な
- シークレットを格納するための安全な
アクセス制限と監視
特定のユーザーやサービスに必要な最小限の権限のみを付与し、定期的に権限を確認する 各ユーザーやサービスに必要な最小限の権限のみを付与し、定期的に権限を確認する 各ユーザーやサービスに必要な最小限の権限を付与し、定期的に権限を確認する
定期的にシークレットをローテートし、潜在的な侵害を追跡および特定するために使用するアクセスログを維持する GitLab CIをHashiCorp Vaultと統合してシークレットを取得する方法 GitLab CI
HashiCorp Vault シークレットを取得する アクセス制限と監視 GitLab CI HashiCorp Vault
シークレット管理ツール
セキュリティガイドラインが整えられたら、シークレットを管理するためのツールを展開する時です。
シークレットストレージプラットフォーム
すべてのシークレットを統合して監視するためのツールです:
| プラットフォーム | 機能 | 最適 |
|---|---|---|
| HashiCorp Vault | ダイナミックシークレット、暗号化サービス、IDベースのアクセス | 大規模な運用 |
| AWSシークレットマネージャー | AWSと統合されたシームレスな操作、自動ローテーション、細かい権限管理 | AWSに特化したセットアップ |
| Azure Key Vault | ハードウェアセキュリティモジュール、証明書管理、キーローテーション | Microsoft クラウド環境 |
セキュリティを確保したストレージプラットフォームの後、CI/CDツールに付属するシークレット管理機能を活用してください。
CI/CDシークレット管理
多くのCI/CDツールには、組み込みのシークレット管理機能が付属しています。
- GitHub Actions:リポジトリと組織の両方で暗号化されたシークレットを提供します。ログではシークレットが自動的にマスクされ、承認されたワークフローにのみアクセス可能です。
- GitLab CI:保護された変数とグループレベルのシークレットを提供し、プロジェクト間で安全に共有することができ、分離を維持します。
- Jenkins: Jenkinsのクレデンシャルプラグインと外部シークレットストアをサポートします。プラグインはログ内のシークレットがマスクされるようにするために必要です。
Capgo Security Features

Capgoは、Capacitorアプリのライブアップデートのセキュリティを強化するために、標準のCI/CDシークレット管理を拡張します。エンドツーヘンド暗号化を使用して、承認されたユーザー以外のユーザーが敏感データを復号することができないようにします。 [1].
Capgoは、GitHubアクション、GitLab CI、Jenkinsなどのツールと簡単に統合されます。また、チャンネルベースの配布とロールベースのアクセス制御もサポートしており、AppleおよびAndroidプラットフォームの両方のアップデート要件を満たします。
シークレットのバージョン管理
リポジトリを保護するには、ハードコードされたクレデンシャルが漏洩しないようにする必要があります。セキュアなボールトストレージから始め、追加のセーフガードを追加して、code内に敏感情報が含まれないようにします。
ここでは、防御を強化する方法を紹介します:
- ツールとして git-secrets またはコミット前のフレームワーク コミットされる前に問題を検出する
- 定期的なスキャンを実行 ツールとして truffleHog または Capacitorライブアップデートの代替手段を比較する際に使用される Capacitorライブアップデートの代替手段を比較する際に使用される
- Capawesomeの代替手段を比較する際に使用される Capawesomeの代替手段を比較する際に使用される
Capgoのコンサルティングサービス
GitGuardianを使用して、漏れていたシークレットを検出することができます。
このガイドでは、セキュリティと高速デプロイを実現するために、エンドツーエンド暗号化とSmooth CI/CD統合を提供するCapgoを紹介しました。[1].
CI/CDパイプラインにおけるシークレットの管理の重要なポイント:
- セキュリティ上のシークレットの管理のために、セキュリティ上のシークレットの管理のためにvault storageを使用します。:ストレージとトランジットの両方で暗号化を提供するプラットフォームに依存します。
- セキュリティチェックを自動化します。:シークレットの漏洩を早期に検出するために、スキャニングツールを実装します。
- アクティビティを追跡して監視します。:シークレットへのアクセスと変更の詳細なログを維持します。
- インシデントに備えています。:漏洩したシークレットに対処し、必要に応じて変更を巻き戻すための明確なプロセスを設定します。
シークレットの管理は、CI/CDのサポートシステムとしてセキュリティを実現することを目的としています。
CI/CDパイプラインにおけるシークレットの管理の続き
あなたが CI/CD Pipelinesにおけるシークレットの管理 セキュリティとコンプライアンスの計画を行うには 暗号化 暗号化の実装詳細 コンプライアンス コンプライアンスの実装詳細 Capgo セキュリティスキャナー Capgo セキュリティスキャナーの製品ワークフロー Capgo セキュリティ Capgo セキュリティの製品ワークフロー Capgo トラストセンター Capgoの製品ワークフローについてはCapgoのTrust Centerで確認してください。