ソフトウェアのセキュリティとコンプライアンスをアーティファクトに設定する方法

How to Setup Software Security and Compliance for Your Artifacts

チームやサイトで使用されているすべてのオープンソース(OSS)コンポーネントの安全性を確保する最も簡単な方法はソフトウェア構成分析(SCA)ツールを利用することです。オープンソースの使用状況を管理・把握するためには自動化された信頼性の高い方法が必要です。

JFrog Xrayはソフトウェア開発ライフサイクル(SDLC)に脆弱性とライセンスコンプライアンスのスキャンを設定することができます。オンプレミス、クラウド、ハイブリッドで利用可能なXrayは企業のソフトウェア・コンポーネントを相互に接続して可視化し、脆弱性やライセンス問題のない迅速なリリースを実現します。このブログ記事で、その手順をご紹介します。

始める前に

必要なものは以下の通りです:

ステップ1: あなたの環境にログイン

オンプレミス版の場合はデフォルトのUsername: admin、Password: password、クラウド版の場合はメールで送られてきた認証情報を使ってログインします。

Login to JFrog Platform

ステップ2: 選択したリポジトリでJFrog Artifactoryをセットアップ

過去の記事でプライベート、リモート、バーチャルDockerレジストリを設定する方法をご紹介しています。

ステップ3: Policyの定義

Policyはセキュリティおよびライセンスコンプライアンスの仕様を定義するものです。組織のニーズに合わせて強制するルールや適用する自動アクションを定義します。

ApplicationモジュールからSecurity & Compliance > Policiesをクリックします。

タイプが「Security」の新しいPolicyを追加します。新規ルールをクリックし、「All Severities」に設定します。

注: 新たなセキュリティ問題が見つかった場合に実行する自動アクションを定義することもできます。例えばWebhookのトリガー、メールでの通知、ダウンロードのブロック、ビルドの失敗などです。何も有効になっていない場合は単にWeb UIに情報が表示されるだけです。

Define a policy in JFrog Xray

ステップ4: 監視するリポジトリを選択し、PolicyをWatchに割り当てる

Watchアーティファクト・リポジトリとビルドなどの監視するリソースの範囲を定義します。ここでは新しいWatchを作成し、先ほど作成したPolicyを適用します。

ApplicationモジュールからSecurity & Compliance > Watchesをクリックし、新しいWatchを追加します。

Add a new watch in JFrog Xray

Add Repositoriesをクリックし、このWatchに含めるリポジトリを選択します。

Select the repositories to include in the watch

リソースが選択されたため、Policy自体を作成することができます。

Manage Policiesをクリックし、前のステップで作成したPolicyを選択します。

Create policy in JFrog Xray

ステップ5: スキャンを実行

Watch作成後、スキャンがトリガーされるイベントが発生した場合、指定されたリソースのアーティファクトをスキャンし、それに応じて違反を報告します。

しかし、スキャンのトリガーとなるイベントが起こるまで(新しいアーティファクトがリポジトリにプッシュされるなど)、システム内にすでに存在するアーティファクトはWatchによってスキャンされません。そこで、関連するアーティファクトにWatchが直ぐに適用されるようにするために、手動でWatchを起動することができます。

先ほど作成したWatchにカーソルを合わせ、Apply on Existing Contentを選択します。

Run your scan

Watchに割り当てられたリソースの内、どのリソースをスキャンするかを指定し、スキャンするためにターゲットにアーティファクトが存在する必要がある時間を定義する日付範囲を指定します。

例えば「Last 90 days」を選択した場合、過去90日間にターゲットに存在していたアーティファクトのみをスキャンします。

Specify date range

注: Xrayスキャンが完了後、脆弱性の結果が表示されるまでに時間がかかる場合があります。

JFrog Xray vulnerabilities scan results

これは検出された脆弱性の1つについての依存関係のツリーです。

JFrog Xrayを導入する際に推奨されるベストプラクティスの詳細もご確認ください。

以上です。

是非、ご自身でお試し下さい。