ライセンス | オンプレミスおよびSaaS |
製品 | AssessとProtectの両方、もしくは単体 |
製品カテゴリ | .NETエージェント |
サブカテゴリ | 接続 |
概要
本項では、以下のような事象が発生している場合の対策について解説します:
- .NETエージェントが正常に起動しない。
-
Contrastトレイおよび/または.NETエージェントのログで、Contrastへの接続エラーが報告される。
.NET Agent Windows Service failed to start. The agent cannot connect to TeamServer at: https://app.contrastsecurity.com.
-
エージェントをインストールしたアプリケーションサーバのデータが、Contrast UI(Webインターフェイス)に表示されない。
原因
この問題の原因はいくつか考えられますが、エージェントがContrast UIと正常に通信できないために、操作が続行できない状況です。
次のようなエラーが表示される場合は、一般的な原因は、ルートCA(ルート認証局)を認識できないためと考えられます:
System.Security.Authentication.AuthenticationException: 検証プロシージャによると、リモート証明書は無効です。
次のいずれかのエラーが発生している場合は、エージェントの設定ファイルで認証情報に誤りがあると考えられます:
System.Net.WebException: リモート名を解決できませんでした
Response Code: Unauthorized
Response Code: PreconditionFailed
解決方法
< 証明書の問題の場合 >
$webRequest = [Net.WebRequest]::Create("https://app.contrastsecurity.com")
try { $webRequest.GetResponse() } catch {}
$cert = $webRequest.ServicePoint.Certificate
$bytes = $cert.Export([Security.Cryptography.X509Certificates.X509ContentType]::Cert)
set-content -value $bytes -encoding byte -path "$pwd\Contrast.cer"
方法1 - 例外を許可する
プロキシ/ファイアウォール(BlueCoatなど)の管理者に連絡し、Contrast UIへの通信をバイバスする設定ができるか確認してください。
方法2 - 証明書を信頼する
証明書をダブルクリックして開き、「証明書のインストール」を選択します。表示される画面の指示に従って、ローカルコンピュータに信頼されたルート証明機関の証明書ストアを選択して、証明書をインストールします。
方法3 - 証明書の例外を無視する
以下の設定を、サーバのcontrast_security.yaml
ファイルに追加することで、証明書検証のエラーを無視することができます。
api:
certificate:
ignore_cert_errors: true
< 設定の問題の場合>
上記以外の問題については、.NETエージェントの作業ディレクトリ(例、%ProgramData%\Contrast\dotnet\
)にある.NETエージェントの設定ファイルcontrast_security.yaml
を開いて、以下を行います。
url
値が正しいことを確認します。オンプレミス(EOP)版をご利用の場合は異なりますが、値は以下のようになります。api:
アプリケーションサーバ上の通常のWebブラウザから、このURLに到着できるかどうか確認してください。到着できない場合は、アプリケーションサーバとContrastサーバ間のネットワークパスや関連する設定を確認する必要があります。
url: https://app.contrastsecurity.com/Contrast- プロキシの設定を確認します。通常のブラウザではContrast UIに接続できても、エージェントが接続できない場合、 ネットワーク環境で必要なプロキシの設定がエージェントに指定されていない可能性があります。以下のオプションを指定することにより、エージェントにプロキシが設定されます。<>の箇所は、ご利用の環境に合わせて値を置き換えてください。
api:
proxy:
enable: true
url: <proxy url with port and scheme>
user: <proxy user if required>
pass: <proxy password if required>
auth_type: <proxy auth type if required> -
service_key
とapi_key
の値が正しいことを確認します。前述までの設定が正しい場合、組織で使用しているAPIキーが変更されている可能性があります。現在のAPIキーの確認方法についてはは、 エージェントの検索(オンラインヘルプ)をご覧ください。
.NETエージェントの設定に関する詳しい情報は、.NETエージェントの設定(オンラインヘルプ)を参照ください。エージェントの全ての設定は、環境変数として指定することもできます。環境変数は、プロキシのパスワードなど設定ファイルに保存できない値に利用すると便利です。