GitOps セキュリティ
GitOps セキュリティ とは何ですか?
GitOps セキュリティインフラとアプリケーションの宣言的な望ましい状態を Git に保存し、自動化されたコントローラーが本番環境と継続的にリコンサイルする GitOps ワークフローのセキュリティ実践。
GitOps では Git を唯一の真実の源として用い、Argo CD や Flux などのツールがクラスターを継続的にその状態へ揃えます。そのためセキュリティの焦点は Git リポジトリ、コミッターのアイデンティティ、プルリクエストの制御、GitOps コントローラー自体に移ります。主要な実践には、ブランチ保護、署名付きコミット・タグ、CODEOWNERS、必須レビュー、リポジトリ内に平文シークレットを置かない設計(Sealed Secrets、External Secrets、SOPS、Vault 連携)、ポリシー・アズ・コード(OPA Gatekeeper、Kyverno)、イメージ署名の検証(Cosign)、コントローラーへの最小権限付与、監査ログの外部送出などが含まれます。レビューを経ていないマニフェスト、悪意ある Helm Chart、未署名イメージをコントローラーに適用させない仕組みも不可欠で、設定不備により単一のマージから全クラスター侵害に発展する恐れがあります。
● 例
- 01
Argo CD を、保護された署名付き main ブランチからのみリコンサイルさせ、Cosign でイメージ署名を検証する構成。
- 02
Sealed Secrets を用いて、暗号化済みマニフェストを Git に安全に格納する運用。
● よくある質問
GitOps セキュリティ とは何ですか?
インフラとアプリケーションの宣言的な望ましい状態を Git に保存し、自動化されたコントローラーが本番環境と継続的にリコンサイルする GitOps ワークフローのセキュリティ実践。 サイバーセキュリティの アプリケーションセキュリティ カテゴリに属します。
GitOps セキュリティ とはどういう意味ですか?
インフラとアプリケーションの宣言的な望ましい状態を Git に保存し、自動化されたコントローラーが本番環境と継続的にリコンサイルする GitOps ワークフローのセキュリティ実践。
GitOps セキュリティ はどのように機能しますか?
GitOps では Git を唯一の真実の源として用い、Argo CD や Flux などのツールがクラスターを継続的にその状態へ揃えます。そのためセキュリティの焦点は Git リポジトリ、コミッターのアイデンティティ、プルリクエストの制御、GitOps コントローラー自体に移ります。主要な実践には、ブランチ保護、署名付きコミット・タグ、CODEOWNERS、必須レビュー、リポジトリ内に平文シークレットを置かない設計(Sealed Secrets、External Secrets、SOPS、Vault 連携)、ポリシー・アズ・コード(OPA Gatekeeper、Kyverno)、イメージ署名の検証(Cosign)、コントローラーへの最小権限付与、監査ログの外部送出などが含まれます。レビューを経ていないマニフェスト、悪意ある Helm Chart、未署名イメージをコントローラーに適用させない仕組みも不可欠で、設定不備により単一のマージから全クラスター侵害に発展する恐れがあります。
GitOps セキュリティ からどのように防御しますか?
GitOps セキュリティ に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
GitOps セキュリティ の別名は何ですか?
一般的な別名: セキュア GitOps。
● 関連用語
- appsec№ 166
CI/CD セキュリティ
継続的インテグレーションと継続的デリバリーのパイプラインを、侵害・コード注入・シークレット漏洩・不正デプロイから守るための一連の統制。
- cloud-security№ 600
Kubernetes セキュリティ
Kubernetes クラスター(API サーバー、コントロールプレーン、ノード、ワークロード、ネットワーク)を構成ミス・侵害・横移動から守ること。
- appsec№ 1069
ソフトウェアサプライチェーンセキュリティ
ソースコード・依存関係・ビルド・署名・配布・デプロイに至るまで、ソフトウェア製造の各リンクを改ざん・悪意あるコード・完全性喪失から守る取り組み。
- appsec№ 459
コードへのハードコードされたシークレット
認証情報・API キー・トークン・暗号資産をソースコード・設定ファイル・コンテナイメージに直接埋め込むことで、容易に発見・悪用される状態。
- appsec№ 784
パッケージ署名
ソフトウェアパッケージに暗号学的署名を付与し、利用者が発行者の身元と公開後に改ざんされていないことを検証できるようにする仕組み。
- appsec№ 309
DevSecOps
セキュリティの責任を DevOps のワークフローに組み込み、安全なソフトウェアを継続的かつ高速に提供するための文化とプラクティス群。