.NET Frameworkエージェントを設定する
エージェントには基本の設定があり、設定値には優先順位があります。
.NET Frameworkエージェントを設定します:
ヒント
エージェント設定エディタを使用すると、YAML設定ファイルの作成やアップロード、YAMLの検証、推奨される設定値の表示などができます。
Azure App Serviceでの.NET Frameworkエージェントの設定
Azure PortalでAzure App Serviceの.NET Frameworkエージェントを設定するには、3つの方法があります。
Contrastエージェントの環境変数の表記規則を使用します。Azure Portalの構成画面よりアプリケーション設定セクションに、エージェントの環境変数の構文を使用して全ての設定を追加します。
アプリケーションのweb.configファイルに、
application
という設定オプションを指定します。web.configに指定したアプリケーションの設定をContrastエージェントに認識させるためには、これらの設定をアプリケーション のweb.configファイルのルートのappSettings
セクション内に記述する必要があります。詳細は、web.configファイルで設定を参照してください。Azure Portalで個々のオプションを設定する代わりに、Contrastの設定を含むYAML設定ファイルを使用することもできます。まず、ファイルをアプリケーションのデプロイメントに含めるか、Kuduコンソールを使用して、Azure Webアプリケーションにこのファイルをアップロードします。次に、このファイルの場所を指す設定である
CONTRAST_CONFIG_PATH
を追加します。例えば、アプリケーションのルートにあるcontrast_security.yamlファイルを使用する場合は、
CONTRAST_CONFIG_PATH
というキーに D:\Home\site\wwwroot\contrast_security.yamlという値で、アプリケーションの設定を追加します。Azure App Serviceのアプリケーションファイルは、D:\home\site\wwwrootにデプロイされます。
.NET Frameworkエージェントをweb.configファイルで設定
エージェントの設定オプションは、アプリケーションのweb.configファイルまたはYAML設定ファイルを使用して指定できます。web.configに指定したアプリケーションの設定をContrastエージェントに認識させるためには、これらの設定をアプリケーションweb.configファイルのルート<configuration>のappSettings
セクション内に記述する必要があります。
例えば、同じアプリケーションプールにホストされている2つのアプリケーションは、各アプリケーションのweb.configファイルでappSettings
にcontrast.server.name
プロパティを設定すると異なるサーバとして報告されます。また、 web.configを使用して次のようにcontrast.application.name
を指定することもできます。
<configuration> <appSettings> <add key="contrast.application.name" value="MyWebAppName" /> <add key="contrast.application.version" value="1.2.3" /> </appSettings> <system.web> ...
その他の利用可能なプロパティの説明は、.NET FrameworkエージェントのYAMLテンプレートを参照してください。
エージェントのバージョンが21.1.4より前の場合、web.configで設定できるのは、以下のように一部のプロパティのみとなります。
プロパティ | 導入された.NET Frameworkエージェントのバージョン |
---|---|
| 19.6.3 |
| 19.1.3 |
| 19.1.3 |
| 19.1.3 |
| 20.6.6 |
| 20.6.6 |
| 19.1.3 |
| 19.1.3 |
| 19.1.3 |
| 19.1.3 |
注記
contrast.application.name
が指定されていない場合、.NET Frameworkエージェントは、アプリケーションの仮想パスをアプリケーション名として使用します。アプリケーションがサイトのルートでホストされている場合(つまり、仮想パスが/の場合)、.NET Frameworkエージェントはこのサイトの名前をアプリケーション名として使用します。
重要
エージェントのバージョン21.1.4以降、ほとんどのエージェントの設定が、アプリケーションのweb.configファイル、またはアプリケーションと同じディレクトリにあるcontrast_security.yaml
で指定できるようになりました。例えば、同じアプリケーションプールにホストされている2つのアプリケーションは、各アプリケーションのweb.configファイルのappSettings
にcontrast.server.name
を設定すると異なるサーバとして報告されます。
以下の設定オプションは、processレベルで適用され、アプリケーションごとに個別に指定できません。これらのプロパティは、web.configを使用して設定できません。別の方法(YAMLなど)で設定する必要があります。
agent.dotnet.app_pool_denylist
agent.dotnet.app_pool_allowlist
agent.dotnet.enable_instrumentation_optimizations
agent.dotnet.enable_jit_inlining
agent.dotnet.enable_transparency_checks
agent.dotnet.enable_struct_dataflow
assess.enable_control_detection
また、以下のキーについては、エージェントのプロファイラコンポーネントはプロセスレベルの設定を使用し、エージェントのセンサーコンポーネントはアプリケーション個別の設定(指定されている場合)を使用します。
agent.logger.level
agent.logger.stdout
.NET FrameworkエージェントのYAMLテンプレート
YAML設定ファイルを使用して、.NET Frameworkエージェントを設定します。
contrast_security.yamlファイルは、インストーラによってエージェントのデータディレクトリ にコピーされます(デフォルトでは、C:\ProgramData\Contrast\dotnet\contrast_security.yaml)。コピー先に既にYAMLファイルが存在する場合は、インストーラはYAMLファイルをコピーしません。
以下のテンプレートには、このエージェントで有効なYAMLオプションがすべてあります。例えば、このファイルを使用して.NET Frameworkエージェントによって報告されるサーバ名を設定することができます。その場合、contrast_security.yamlファイルに新しい行として以下のコードを追加してファイルを更新してから、通常通りにインストールを続けます。
server: name: MyServerName
https://docs.contrastsecurity.jp/common-agent-config/dotnet_contrast_security.yaml
証明書の例外について
証明書の例外が発生していて、無視しても問題ないと思われる場合は、YAML設定ファイルに次の設定を追加します。
api: certificate: ignore_cert_errors: true
サポートポータルの記事にて、証明書の問題に対処するための詳細を参照できます。