Contrast CLIコマンド
以下は、CodeSec利用者およびエンタープライズユーザ(企業ユース)が利用できるContrast CLIコマンドの一覧です。
使用法:contrast [コマンド] [オプション]
認証/接続
CodeSec利用者の場合、GitHubまたはGoogleアカウントを使用して認証します。ログイン用の新しいブラウザ画面が開きます。
使用法:
contrast auth
Contrastのアカウントを既にお持ちの場合は、以下のauth
コマンドを実行すると、認証情報がローカルに保存されます。
使用法:
contrast auth --api-key <your API key> --authorization <your authorization header> --host <your host domain> --organization-id <your organization ID>
そして、コマンドを使用してスキャンを開始します。
保存されている認証情報を表示します。
使用法:
contrast config
オプション:
-c
、--clear
保存されている認証情報を削除します。
Contrast CLIのバージョンを表示します。
使用法:
contrast version
メイン機能
作業ディレクトリ内にある依存関係の設定ファイルを検索して依存関係のセキュリティ検査を実行し、結果を返します。
使用法:
contrast audit [オプション]
オプション:
--fail
検出されたCVEの深刻度に基づいて、ビルドを失敗させます。--severityオプションと一緒に使用します。例えば、contrast audit --fail --severity highです。深刻度を指定しない場合、すべての深刻度で失敗が返ります。失敗が検出された場合、CLIコマンドはコード2で終了します。
--file
依存関係が宣言されているディレクトリまたはファイルを指定します(デフォルトでは、Contrast CLIによって現在のディレクトリ内でプロジェクトファイルが検索されます)。ディレクトリ内で複数のプロジェクトファイルが見つかった場合、監査するファイルを確認するプロンプトが表示されます。
エイリアス:
-f
--ignore-dev
検査結果から開発・試験用ライブラリの依存関係を除外します。デフォルトでは、全ての依存関係が結果に含まれます。
エイリアス:
-i
--legacy
Contrast Webインターフェイスにアプリケーションを作成します(旧CLIのワークフロー)。コードの依存関係ツリーを表示し、メタデータを利用します。これは、Contrast CLI V2.0でのみ利用可能であることにご注意ください。
--save
SBOM(ソフトウェア部品表)をSPDXやCycloneDX形式で生成して保存します。有効なオプション:--save cyclonedx、--save spdx (CycloneDX形式がデフォルト)
エイリアス:
-s
--severity
ビルドを失敗させるCVEの最低レベルの深刻度を指定します。--failオプションと一緒に使用します。例えば、contrast audit --fail --severity highです。深刻度は、critical、high、medium、low、またはnoteです。
--track
デフォルトでは、結果は保持・保存されないため、コンソールでローカルチェックを行うことになります。
--track
フラグを追加すると、Contrast Webインターフェイスのライブラリページにある静的タブに、プロジェクトのSCA結果を表示できます。これは、Contrast CLI V2.0でのみ利用可能使用であることにご注意ください。
詳細オプション:
--api-key
エンタープライズユーザには必須です。Contrastで提供されるエージェントのAPIキーを指定します。キーの検索方法については、エージェントキーを参照してください。
--application-id
Contrastに登録されているアプリケーションのIDを指定します。
--application-name
Contrastに登録されているアプリケーションの名前です。
--app-groups
アプリケーションのオンボーディング時に、1つ以上の既存のグループにアプリケーションを割り当てます。グループリストは、カンマで区切る必要があります。
--authorization
エンタープライズユーザには必須です。Contrastで提供される認証ヘッダーです。
--code
Contrastでアプリケーションに使用するアプリケーションコードです。
--host
エンタープライズユーザには必須です。ホスト名を指定します。(例) https://app.contrastsecurity.com/
--maven-settings-path
mavenのsettings.xmlファイルのパスを表示します。
--metadata
アプリケーションに関連付けるユーザ定義のメタデータを指定するための、キーと値のペアのセット(RFC 2253に準拠)を定義します。
--organization-id
エンタープライズユーザには必須です。Contrastでの組織IDを指定します。IDの検索方法については、エージェントキーを参照してください。
--tags
アプリケーションにタグを適用します。タグは、カンマ区切りのリストとして書式設定する必要があります。(例) label1,label2,label3
プロキシの設定:
--cacert
CaCert(認証局(CA)による証明書)ファイルのパスを表示します。
--cert
Cert(証明書)ファイルのパスを表示します。
--cert-self-signed
ローカルインストールしたContrastオンプレミス(EOP)をご利用のお客様の場合、SSL証明書をバイパスして自己署名証明書を認識します。
--key
証明書の鍵のパスを表示します。
--proxy
プロキシサーバ経由の接続を許可します。認証が必要な場合は、ユーザ名とパスワード、プロトコル、ホスト、ポートを例のように指定します。(例) "http://username:password@<host>:<port>"
SASTスキャンを実行します。
使用法:
contrast scan [オプション]
オプション:
--fail
検出された脆弱性の深刻度に基づいて、ビルドを失敗させます。--severityオプションと一緒に使用します。例えば、contrast scan --fail --severity highです。深刻度を指定しない場合、すべての深刻度で失敗が返ります。失敗が検出された場合、CLIコマンドはコード2で終了します。
--file
スキャンするファイルのパスを指定します。ファイルが指定されていない場合は、Contrastはサポート対象ファイル(.jar、 .war、.js、.zipファイル)を作業ディレクトリ内で検索します。
エイリアス:
-f
--host
エンタープライズユーザには必須です。ホスト名を指定します。(例) https://app.contrastsecurity.com/
--language
有効な値:JAVA、JAVASCRIPT、DOTNET
エイリアス:
-l
--name
Contrastのプロジェクト名を指定します。指定されていない場合、Contrastはcontrast.settingsを使用してプロジェクトを識別するか、プロジェクトを作成します。
エイリアス:
-n
--save
検出結果をSARIF(Static Analysis Results Interchange Format)ファイルでダウンロードします。ファイルは、デフォルトの名前のresults.sarifで現在の作業ディレクトリにダウンロードされます。このファイルは、任意のテキストエディタで表示できます。
エイリアス:
-s
--severity
ビルドを失敗させる脆弱性の最低レベルの深刻度を指定します。--failオプションと一緒に使用します。例えば、contrast scan --fail --severity highです。深刻度は、critical、high、medium、low、またはnoteです。
--timeout
スキャンが完了するまでの待機時間(wait)を秒数で指定します。デフォルトの値は、300秒です。
エイリアス:
-t
詳細オプション:
--api-key
エンタープライズユーザには必須です。Contrastで提供されるエージェントのAPIキーを指定します。キーの検索方法については、エージェントキーを参照してください。
--authorization
エンタープライズユーザには必須です。Contrastで提供される認証ヘッダーです。
-ff
ファイア・アンド・フォーゲット(Fire-&forget)。実行させておくだけで、結果を監視・待つ必要がありません。
--host
エンタープライズユーザには必須です。ホスト名を指定します。(例) https://app.contrastsecurity.com/
--label
スキャンにラベルを付けます。デフォルトは、CLIツールで開始した日付[現在の日付]です。
--organization-id
エンタープライズユーザには必須です。Contrastでの組織IDを指定します。IDの検索方法については、エージェントキーを参照してください。
--project-id
スキャンプロジェクトに関連付けられたIDです。IDは、Contrast Webインターフェイスでスキャンプロジェクトを選択した際のURLにある最後の文字列です。
プロキシの設定:
--cacert
CaCert(認証局(CA)による証明書)ファイルのパスを表示します。
--cert
Cert(証明書)ファイルのパスを表示します。
--cert-self-signed
ローカルインストールしたContrastオンプレミス(EOP)をご利用のお客様の場合、SSL証明書をバイパスして自己署名証明書を認識します。
--key
証明書の鍵のパスを表示します。
--proxy
プロキシサーバ経由の接続を許可します。認証が必要な場合は、ユーザ名とパスワード、プロトコル、ホスト、ポートを例のように指定します。(例) "http://username:password@<host>:<port>"
AWS Lambda関数をスキャンします。スキャンするAWS Lambdaの関数名を指定してください。
使用法:
contrast lambda --function-name <関数名> [オプション]
エイリアス:
-f
オプション:
--endpoint-url
AWSエンドポイントを上書きします。AWS CLIと同様です。
エイリアス:
-e
--region
AWSリージョンを上書きします。デフォルトは、AWS_DEFAULT_REGIONです。AWS CLIと同様です。
エイリアス:
-r
--profile
AWSの設定プロファイルを上書きします。AWS CLIと同様です。
エイリアス:
-p
--json
人が判読できるデフォルトのフォーマットではなく、レスポンスをJSON形式で返します。
エイリアス:
-j
-–verbose
ターミナルに詳細情報を返します。
エイリアス:
-v
--list-functions
スキャン可能なLambda関数を一覧表示します。
-–help
使用方法を表示します。
エイリアス:
-h
プロキシの設定:
--cacert
CaCert(認証局(CA)による証明書)ファイルのパスを表示します。
--cert
Cert(証明書)ファイルのパスを表示します。
--cert-self-signed
ローカルインストールしたContrastオンプレミス(EOP)をご利用のお客様の場合、SSL証明書をバイパスして自己署名証明書を認識します。
--key
証明書の鍵のパスを表示します。
--proxy
プロキシサーバ経由の接続を許可します。認証が必要な場合は、ユーザ名とパスワード、プロトコル、ホスト、ポートを例のように指定します。(例) "http://username:password@<host>:<port>"
ヘルプと学習コンテンツ
使用方法を表示します。CLIコマンドの詳細なヘルプを一覧表示 するには、-hか--helpフラグをコマンドに追加します。
使用法:
contrast scan --help
エイリアス:
-h
ContrastのSecure Codeラーニングハブを表示します。
使用法:
contrast learn