Yamlとは
Contrastでアプリケーションを検査するには、アプリケーションで使用している言語に応じてContrastエージェントをインストールし、エージェントがアプリケーションを認識して、Contrastサーバに情報を通信できるように設定しなければなりません。Contrastサーバへの通信するために必要な情報を入力する設定ファイルがYaml(contrast_security.yaml) です。
Yamlを利用しない場合、システムプロパティや環境変数での設定も可能です。本ページでは一番多く利用されるYamlでの設定方法のベストプラクティスをご案内しております。尚、他の方法でも設定し、Yamlでも設定している場合は優先順位が高い設定が反映されるのでご注意ください。
詳細は優先順位をご確認ください。
Yamlの入手から配置まで
Contrast UIからエージェントの設定ファイルをダウンロードできます。
-
新規登録をクリック
-
言語を選択し、contrast_security.yaml をダウンロード(例ではJava)
-
contrast_security.yamlをWeb applicationサーバへ配置する場所に関しては下記オンラインドキュメントの各言語のyamlのテンプレートのページを参照ください。Javaの場合は以下がデフォルトの配置場所です。
/etc/contrast/java/contrast_security.yaml
注意:古いYamlをご利用の場合は、新しいYamlファイルを上記の手順にてダウンロード頂くことを推奨させて頂きます。言語によっては必須のパラメータが変更になったりする可能性がございます。
Yamlの設定項目
Yamlのテンプレートに詳細は記載されております。各言語のテンプレートへは下記よりアクセスください。
https://docs.contrastsecurity.jp/ja/yaml-configuration.html
よく利用される設定プロパティをご紹介させて頂きます。(サンプル)
①必須の項目です。Javaエージェントの場合は、Contrast UIからYamlをダウンロードすると予め入力されております。入力値に関しては基本のキーを参照してください。
以下は必須ではありませんが、必要に応じて設定していただくことが可能です。
②検査対象のアプリケーションがプロキシを経由してContrast サーバに通信する場合に必要な項目です。認証が必要な場合は、auth_type(Basic, Digest, NTLM)を設定し、user, passを記載ください。
③server.nameプロパティを設置することでサーバ名を固定することが可能です。
コンテナ環境などで再起動する度にContrast UI上でサーバ名が変わる場合、固定することにより一つのサーバとして表示されます。
環境を(開発環境、QA、本番環境)指定したい場合はそれぞれDEVELOPMENT
QA
, PRODUCTION
と指定ください。Contrast UI上でデフォルトの環境を設定可能です。
④application.nameプロパティを設置することでContrast UI上で表示されるアプリケーション名を固定することが可能です。同じJVM上で複数のアプリケーションが動作している場合、Contrast UIに複数のアプリケーションを表示しますが、名前を指定することで同一の名前でアプリケーションとしてオンボードされます。
セッションメタデータを使用すると、特定のブランチ、ビルド、コミットしたユーザ、リポジトリなどによって、脆弱性やルート情報をフィルタリングできます。詳細はセッションメタデータをご確認ください。
⑤ログレベルを指定できます。サポートにケースを発行した際の調査の中でログレベルをTRACEに変更頂くこともございます。
注意:YAMLテンプレートでは空白が認識されます。スペースは使用できますがタブは使用できないため、編集時には注意が必要です。各プロパティの説明は、テンプレート内のコメントとして記載されています(スペースの後にシャープ記号「#」で続く行がコメントになります)。
エージェント設定エディタについて
ContrastエージェントのYamlを編集し検証して生成するために利用するWebアプリケーションです。Yamlの設定項目の説明(英語)もあり全てのパラメータの説明もございます。こちらを利用することでYamlの構文にエラーがないか検証もできます。
詳細はエージェント設定エディタを参照ください。