.NET Coreエージェントの標準インストール
.NET Coreエージェントをインストールするには:
[en] Before you begin, check the system requirements and supported technologies to be sure installation will work and ensure best performance.
注記
[en] Installing within containers can be complex, and these steps might not work for your situation. Read more about installing with Docker.
Contrast Webインターフェイスから.NET Coreエージェントをダウンロードします。
Webサーバで、ダウンロードしたzipアーカイブ(例えば、Contrast.NET.Core_1.0.1.zip)を、アプリケーションが十分なアクセス権限を持つディレクトリに展開します。
アプリケーションのプロセスに以下の環境変数を設定します。特定のアーキテクチャの正しいCORECLR_PROFILER_PATH設定を以下の表で確認してください。
[en] Windows
環境変数
値
CORECLR_PROFILER_PATH_64
runtimes\win-x64\native\ContrastProfiler.dll
CORECLR_PROFILER_PATH_32
runtimes\win-x86\native\ContrastProfiler.dll
CORECLR_PROFILER
{8B2CE134-0948-48CA-A4B2-80DDAD9F5791}
CORECLR_ENABLE_PROFILING
1
CONTRAST_CONFIG_PATH
\contrast_security.yaml
ロードパスの詳細について確認してください。重要
[en] If you are running the .NET Core agent and the .NET Framework agent on the same server, the CONTRAST_CONFIG_PATH option applies to the load path for both agents. To apply distinct paths for each agent, use these options to set the data directory:
[en] CONTRAST_CORECLR_DATA_DIRECTORY
[en] CONTRAST_DATA_DIRECTORY
[en] Linux
環境変数
値
CORECLR_PROFILER_PATH_64
runtimes\linux-x64\native\ContrastProfiler.so
CORECLR_PROFILER
{8B2CE134-0948-48CA-A4B2-80DDAD9F5791}
CORECLR_ENABLE_PROFILING
1
CONTRAST_CONFIG_PATH
\contrast_security.yaml
ロードパスの詳細について確認してください。
アプリケーションのランタイムユーザが以下のパスにアクセスできることを確認してください。
パス
用途
カスタマイズ可能
権限
エージェントの設定
可。環境変数CONTRAST_CONFIG_PATHを設定
読取り
{{解凍されたディレクトリのルート}}
ルート「インストール」ディレクトリ。エージェントバイナリを格納
不可
読取り
Windows: %ProgramData%\Contrast\dotnet-core\logs
Linux: /var/tmp/contrast/dotnet-core/logs
Contrastエージェントログ用ディレクトリ。このディレクトリがない場合は作成される
可。環境変数CONTRAST_CORECLR_LOGS_DIRECTORYを設定
読取り/書込み(または親ディレクトリから継承)
注記
IISで実行する場合、アプリケーションプールがこれらのパスにアクセスできることを確認してください。
例えば、デフォルトのID
ApplicationPoolIdentity
を使用するDefault Web Site
という名前のアプリケーションプールの場合、ユーザのIIS AppPool\Default Web Site
に、解凍されたディレクトリのルートを読み取るための有効な権限があることを確認します。.NET Coreエージェントのcontrast_security_yamlファイルを使用して、Contrastに接続するための認証情報とプロキシの設定を行います。
アプリケーションがロードされたら、アプリケーションを実行し、Contrastでサーバとアプリケーションがアクティブになっていること、および予想される脆弱性が表示されることを確認します。
ヒント
エージェントを更新するには、エージェントディレクトリのエージェントファイルを置き換え、アプリケーションを再起動します。エージェントはアプリケーションと一緒に実行されているため、自分自身を更新することができません。
ヒント
環境が正しく設定されていれば、エージェントはアプリケーションとともに自動的に起動されます。
エージェントを停止するには、アプリケーションを終了し、環境からエージェントを削除します。また、CORECLR_ENABLE_PROFILING設定を「0」に変更する方法もあります。
次に、さまざまな環境で.NET Coreエージェントをインストールするための環境変数の例をご紹介します。
IISおよびIIS Express
以下のいずれかの方法によって、環境変数を設定します:
アプリケーションの web.configの
environmentVariables
セクション<?xml version="1.0" encoding="utf-8"?> <configuration> <system.webServer> <!-- ... --> <aspNetCore processPath="dotnet" arguments=".\ExampleNetCoreApp.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout"> <environmentVariables> <environmentVariable name="CORECLR_PROFILER_PATH_64" value="C:\contrast\dotnetcore\runtimes\win-x64\native\ContrastProfiler.dll" /> <environmentVariable name="CORECLR_PROFILER_PATH_32" value="C:\contrast\dotnetcore\runtimes\win-x86\native\ContrastProfiler.dll" /> <environmentVariable name="CORECLR_ENABLE_PROFILING" value="1" /> <environmentVariable name="CORECLR_PROFILER" value="{8B2CE134-0948-48CA-A4B2-80DDAD9F5791}" /> <environmentVariable name="CONTRAST_CONFIG_PATH" value="C:\contrast\dotnet-core\contrast_security.yaml" /> </environmentVariables> </aspNetCore> </system.webServer> </configuration>
サーバのアプリケーションプール設定
Bash (Linux)
export CORECLR_PROFILER_PATH_64=/usr/local/contrast/runtimes/linux-x64/native/ContrastProfiler.so export CORECLR_ENABLE_PROFILING=1 export CORECLR_PROFILER={8B2CE134-0948-48CA-A4B2-80DDAD9F5791} export CONTRAST_CONFIG_PATH=/etc/contrast/contrast_security.yaml
そして、アプリケーションを実行します。
dotnet ./MyAppWithContrastAgent.dll
Powershell または Powershell Core (Windows)
$env:CORECLR_PROFILER_PATH_64 = 'C:\contrast\dotnetcore\runtimes\win-x64\native\ContrastProfiler.dll' $env:CORECLR_PROFILER_PATH_32 = 'C:\contrast\dotnetcore\runtimes\win-x86\native\ContrastProfiler.dll' $env:CORECLR_ENABLE_PROFILING = '1' $env:CORECLR_PROFILER = '{8B2CE134-0948-48CA-A4B2-80DDAD9F5791}' $env:CONTRAST_CONFIG_PATH = 'C:\contrast\dotnet-core\contrast_security.yaml'
そして、アプリケーションを実行します。
dotnet .\MyAppWithContrastAgent.dll
起動プロファイル(dotnet.exe)
{ "MyAppWithContrastAgent": { "environmentVariables": { "CORECLR_PROFILER_PATH_64": "C:\\contrast\\dotnetcore\\runtimes\\win-x64\\native\\ContrastProfiler.dll", "CORECLR_PROFILER_PATH_32": "C:\\contrast\\dotnetcore\\runtimes\\win-x86\\native\\ContrastProfiler.dll", "CORECLR_ENABLE_PROFILING": "1", "CORECLR_PROFILER": "{8B2CE134-0948-48CA-A4B2-80DDAD9F5791}", "CONTRAST_CONFIG_PATH": "c:\\contrast\\config\\MyApp\\contrast_security.yaml" } } }
そして、アプリケーションを実行します。
dotnet run --launch-profile MyAppWithContrastAgent