-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
メモ
カスタムポリシーのマニュアルを読んでもよく分からないのでAIに書かせる。
AIに丸投げは微妙なのであれば、プラクティスに補足を書く。
Checkovによるポリシーチェック
Checkovのインストールと基本的な使い方
追記
pip install checkovコマンドを実行するとerror: externally-managed-environmentエラーが出る場合、以下をコマンドを実行する。
sudo apt install -y pipx
pipx ensurepath
pipx install checkov
主要なチェック項目
補足
- checkovでは標準機能で以下のベストプラクティスを満たしているかコードのスキャンを行います。
-
Kubernetesマニフェスト(YAML)に対するチェック
kubernetes resource scans - checkov -
Terraformコード(.tf)に対するチェック
terraform resource scans - checkov
-
カスタムポリシーの作成
補足
- PJ独自のチェックルールを作成したい場合、カスタムポリシーの作成を行います。
プラクティス/確認
「インストール」がスキャンの中に入っているのは変なので「導入」項目にかく。
導入
- checkovをローカル端末にインストール
checkov --versionコマンドを実行し、バージョンが表示されること
基本的なCheckovスキャン
補足
--check "CUSTOM_*"を付けるとカスタムポリシーのみチェックできる。※これをつけないと大量のFAILEDが出てしまう。
追記 ※以下がないと、次のIssueでスキャンが実行されないため。
policy_typeはterraform
実行例を追記
実行例
tie304119@S2504C10442-T1:~/cloudnative-practice/cloudnative-practice/codes/actions/terraform$ checkov -d . --external-checks-dir /home/tie304119/cloudnative-practice/cloudnative-practice/codes/checkov --check CUSTOM_AWS_PROVIDER_CHECK
[ terraform framework ]: 100%|████████████████████|[3/3], Current File Scanned=iam_role.tf
[ secrets framework ]: 100%|████████████████████|[3/3], Current File Scanned=./_versions.tf
_ _
___| |__ ___ ___| | _______ __
/ __| '_ \ / _ \/ __| |/ / _ \ \ / /
| (__| | | | __/ (__| < (_) \ V /
\___|_| |_|\___|\___|_|\_\___/ \_/
By Prisma Cloud | version: 3.2.508
terraform scan results:
Passed checks: 0, Failed checks: 1, Skipped checks: 0
Check: CUSTOM_AWS_PROVIDER_CHECK: "Ensure AWS provider region is us-west-1"
FAILED for resource: aws.default
File: /_versions.tf:1-1
tie304119@S2504C10442-T1:~/cloudnative-practice/cloudnative-practice/codes/actions/terraform$
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels