Security Center は Jenkins と連携し、各ビルド時にコンテナイメージを自動的にスキャンします。sas-jenkins-plugin プラグインをインストールし、その後、Jenkinsfile を設定して、パイプラインの実行時にイメージスキャンをトリガーするようにします。
このガイドでは、次の手順について説明します。
前提条件
開始する前に、次のものがあることを確認してください。
Jenkins 1.625.3 以降
Security Center コンソールへのアクセス
Alibaba Cloud の AccessKey ID と AccessKey Secret
Jenkins パイプラインプロジェクト
CI/CD プラグインのダウンロード
Security Center コンソールにログインします。上部のナビゲーションバーで、管理する資産のリージョンを選択します。サポートされているリージョンは、中国と中国本土以外です。
左側のナビゲーションウィンドウで、[保護設定] > [コンテナ保護] > [CI/CD 統合設定] を選択します。
[統合設定] をクリックします。
[統合設定] パネルの右上隅にある [プラグインのダウンロード] をクリックします。
このプラグインは、sas-jenkins-plugin という名前の HPI ファイルとしてダウンロードされます。
Jenkins への CI/CD プラグインのインストール
Jenkins にログインします。
左側のナビゲーションウィンドウで、[Jenkins の管理] をクリックします。
[Jenkins の管理] ページで、[プラグインの管理] をクリックします。
[プラグインの管理] ページで、[高度な設定] タブをクリックします。
[プラグインのアップロード] セクションで、[ファイルを選択] をクリックし、
sas-jenkins-pluginHPI ファイルを選択します。[アップロード] をクリックしてください。
インストール後に Jenkins を再起動してください。Jenkins を再起動するまで、プラグインは有効になりません。
イメージスキャンの設定
Jenkins にログインします。
イメージをスキャンしたい Jenkins パイプラインプロジェクトを見つけ、プロジェクト名をクリックします。
左側のナビゲーションウィンドウで、[設定] をクリックします。
「[パイプライン]」セクションで、
sas()ステップを Jenkinsfile に追加します。パイプラインの種類に応じて、以下の例のいずれかを選択します。スクリプトパイプライン
node { sas(accessKeyId: '$AK', accessKeySecret: '$SK', token: '$TOKEN', imageId: '$IMAGE', domain: '$DOMAIN', registryUrl: '$REGISTRY_URL', registryUsername: '$REGISTRY_USERNAME', registryPwd: '$REGISTRY_PWD') }宣言的パイプライン
pipeline { agent any environment { ACCESS_KEY_ID = '$AK' ACCESS_KEY_SECRET = '$SK' IMAGE_ID = '$IMAGE' TOKEN = '$TOKEN' DOMAIN = '$DOMAIN' REGISTRY_URL = null REGISTRY_USERNAME = null REGISTRY_PWD = null } stages { stage('Build') { steps { sas(accessKeyId: env.ACCESS_KEY_ID, accessKeySecret: env.ACCESS_KEY_SECRET, imageId: env.IMAGE_ID, token: env.TOKEN, domain: env.DOMAIN, registryUrl: env.REGISTRY_URL, registryUsername: env.REGISTRY_USERNAME, registryPwd: env.REGISTRY_PWD) } } } }[保存] をクリックします。
ビルドをトリガーするたびに、Security Center はプロジェクト内のイメージのリスクをスキャンします。
次のステップ
Security Center コンソールの [資産] ページの [コンテナ] タブで、イメージスキャンの結果を表示します。詳細については、「イメージスキャンの結果の表示」をご参照ください。