Contrast Gradleプラグイン
Contrast SecurityのGradleプラグインは、次のことを可能にします。
Contrast Javaエージェントのインストール
Contrastへの接続
アプリケーションの新たな脆弱性の検証
開始する前に
Gradle 8.3以降があることを確認
タスク
このプラグインには、公開されているタスクが 2 つあります。
resolveAgent:ContrastSDKで提供されるエージェントをダウンロードします。エージェントが jarPath設定フィールドで指定されている場合、プラグインはそのファイルが存在するかを確認します。contrastCheck:エージェントをインストールした状態で、設定されている全てTestタスクを実行します。その後、Contrast上でアプリケーションに脆弱性が1つでも検出された場合にはビルドを失敗させます。
設定
Gradleプラグインポータルからプラグインをインポートします。
plugins{
id 'com.contrastsecurity.contrastplugin' version '3.0.0'
}このプラグインは、プロジェクトのgradle.buildスクリプトのcontrastConfigurationブロックで設定します。username、apiKey、serviceKey、orgUuidは通常使用する認証情報と同じです。これらの情報は、Contrast Webインターフェイスよりユーザプロファイル > ユーザの設定およびユーザプロファイル > 組織の設定で確認できます。
contrastConfiguration{
username = '<username>'
apiKey = '<apiKey>'
serviceKey = '<serviceKey>'
apiUrl = '<apiUrl>'
orgUuid = '<orgUuid>'
appName = '<appName>'
serverName = '<serverName>'
appVersion = '<appVersion>'
jarPath = "<path.to.local.agent.jar>"
}設定プロパティ
設定値 | 説明 | 必須 |
|---|---|---|
| Contrast Webインターフェイスのユーザの設定にあります。 | はい |
| Contrast Webインターフェイスの組織の設定にあります。 | はい |
| 使用するContrastの組織のURLで、末尾が | はい |
|
| いいえ |
| Contrast上のデータを関連付けるために使用されます。既存のアプリケーションとサーバを指定できますが、それぞれに新しい値を指定することもできます。 | はい |
| Contrast Javaエージェントへのパスです。指定されていない場合、プラグインはSDKからパスをダウンロードします。 | いいえ |
| プラグインによってビルドを失敗させるために必要な、脆弱性の深刻度の最小値を設定します。設定可能な値は、深刻度が低いものから順に以下の通りです:
デフォルトは中です。 | いいえ |
使用方法
プラグインをプロジェクトに追加して設定したら、以下を実行します。
./gradlew contrastCheck
これにより、Contrast Javaエージェントが関連付けられているプロジェクト内のTestタイプの全てのタスクが実行されます。最小の深刻度を超える脆弱性が検出された場合、ビルドは失敗し、その脆弱性は<buildFolder>/contrast/traceResults_<testTaskName>.txtに記録されます。