JenkinsへのShiftLeft統合
CLI ツールをJenkins 開発サイクルに組み込むことができます。
前提条件
CloudGuard アクセストークンを準備し(ShiftLeft CLI ツールのインストール の手順3 を参照)、ID とシークレットを以下の統合手順で使用します。
Jenkins パイプラインの設定
Jenkins メニューで、Manage Jenkins を選択し、System Configuration の下でManage Plugins を選択します。
Plugin Manager のAvailable で、Credentials とDocker Pipeline の2 つのエンティティを見つけてインストールします。
Jenkins メニューで、Manage Jenkins を選択し、Security の下でManage Credentials を選択します。
CloudGuardの認証情報を追加します。
Username に、CloudGuardアクセストークンのID を入力します。
Password にシークレットを入力します。
ID で、これらの認証情報を区別する名前を入力します(CloudGuard_Credentials など)。
必要に応じて、説明を入力します。
メニューのCreate をクリックして、新しいパイプラインを作成します。
Pipeline の下に、環境ID、ルールセットID、パスなどのアセットの詳細を含むShiftLeft スクリプトを追加します。スクリプトの例を以下に示します。
例コピーpipeline { agent any stages { stage('CloudGuard_Shiftleft_IaC') { environment { CHKP_CLOUDGUARD_CREDS = credentials(CloudGuard_Credentials) } agent { docker { image 'checkpoint/shiftleft:latest' args '-v /tmp/:/tmp/' } } steps { dir('iac-code') { git branch: '{banch}', credentialsId: '{jenkins_credentials_id_for_git_credentials}', url: {git_repo_url}' } sh ''' export CHKP_CLOUDGUARD_ID=$CHKP_CLOUDGUARD_CREDS_USR export CHKP_CLOUDGUARD_SECRET=$CHKP_CLOUDGUARD_CREDS_PSW shiftleft iac-assessment -i terraform -p iac-code/terraform-template -r {rulesetId} -e {environmentId} ''' } } stage('CloudGuard_Shiftleft_Code_Scan') { environment { CHKP_CLOUDGUARD_CREDS = credentials(CloudGuard_Credentials) } agent { docker { image 'checkpoint/shiftleft:latest' args '-v /tmp/:/tmp/' } } steps { dir('code-dir') { git branch: '{banch}', credentialsId: '{jenkins_credentials_id_for_git_credentials}', url: {git_repo_url}' } sh ''' export CHKP_CLOUDGUARD_ID=$CHKP_CLOUDGUARD_CREDS_USR export CHKP_CLOUDGUARD_SECRET=$CHKP_CLOUDGUARD_CREDS_PSW shiftleft code-scan -s code-dir -r {rulesetId} -e {environmentId} ''' } } } }
変更を保存し、パイプラインを実行します。
Console Output で、評価結果を参照して設定を確認します。