ハイセキュリティ・モード

デフォルトでは、New Relic エージェントのセキュリティは、高いレベルに設定されています。制限を弱めるため、デフォルトの設定をオーバーライドする場合でも、機密データは絶対に New Relic へ送信されないことを保証したい場合もあると思います。その場合は、ハイセキュリティモードをオンにしてください。

この機能を利用できるかどうかは、契約していいるサブスクリプションレベルによって異なります。

アカウントレベル

ハイセキュリティ機能は New Relic のアカウントレベルで利用可能です。ハイセキュリティをオンにするには、対象のアカウントへレポートしている全アプリケーションに対して、ハイセキュリティを有効にする必要があります。ハイセキュリティは、個々のアカウントに対して設定する必要があります。親アカウントで設定が有効になっていても、サブアカウントは、自動的にその設定を引き継ぐことはありません。

現在、ハイセキュリティには 2 つのバージョンがあります。

エージェント バージョン2のサポート
Java 3.7以上
.NET 3.3以上
Node.js 1.7.0以上
PHP 4.9以上
Python
2.22.0.0以上
Ruby 3.9.1以上
Agent SDK 0.12.12以上

現在のハイセキュリティモデル(V2)の有効化

ハイセキュリティを有効にするには、サーバー上のローカル設定 New Relic UI 上でのリモート設定の両方を変更する必要があります。

一旦、ハイセキュリティを有効にした後にハイセキュリティをオフにするには、New Relic のサポート が必要となります。
設定 説明
ローカル

エージェントの設定ファイルでハイセキュリティモードを有効にします。デフォルトでは無効です。有効にする手順はエージェントによって異なります。

New Relic サーバーには設定がなく、ローカルのみハイセキュリティを設定している場合、エージェントの接続は拒否され、エージェントがシャットダウンします。アプリケーションがシャットダウンすることはありません。

リモート

以下の URL から、New Relic UIでハイセキュリティを設定できます。URL にある ACCOUNT_ID をお使いの New Relic アカウント ID に置き換えてください。

https://rpm.newrelic.com/accounts/ACCOUNT_ID/high_security

ローカルではエージェントのハイセキュリティの設定がなく、New Relic サーバーはハイセキュリティの設定がある場合、エージェントの接続が拒否され、エージェントがシャットダウンします。アプリケーションがシャットダウンすることはありません。

high security v2 を有効にした結果

1度有効にすると、high security v2 はアカウントに対して以下のことを保証します。

機能 注釈
エージェントによる SSL の必須使用 ハイセキュリティモードでは SSL 接続が必須となります。SSL を使っていない場合、接続は拒否されます。エージェントの最新バージョン全てで SSL をサポートしています。設定が適切でない場合、エージェントは、データをすべて SSL を使って送信するように設定を上書きします。
HTTP パラメーターのキャプチャの防止 ハイセキュリティモードでは、顧客の機密データを含んでいる可能性のある HTTP パラメーターを New Relic サーバーに送信することを許可しません。ローカルまたはサーバー側の設定によって、エージェントが HTTP パラメーターを送信するように設定されている場合、ハイセキュリティモードでは、HTTP パラメーターをキャプチャしないように設定を上書きします。
メッセージキューのパラメーターのキャプチャの防止 ハイセキュリティモードでは、顧客の機密データを含んでいる可能性のあるメッセージキューのパラメーターを New Relic サーバーに送信することを許可しません。ローカルまたはサーバー側の設定によって、エージェントがメッセージキューのパラメーターを送信するように設定されている場合、ハイセキュリティモードでは、メッセージキューをキャプチャしないように設定を上書きします。
生の SQL文 のキャプチャの防止 ハイセキュリティモードでは、顧客の機密データが含まれている可能性があるため、生 SQL 文はキャプチャしません。ローカルまたはサーバーサイドの設定により、エージェントが生 SQL をキャプチャするように設定されている場合は、生 SQLをキャプチャしないように、ハイセキュリティモードが設定を上書きします。
ユーザー属性のキャプチャの防止

ハイセキュリティモードでは、エージェント API を使って顧客の機密データを含む可能性のある属性セットのキャプチャを許可しません。

例えば、Java用エージェントでは、以下の NewRelic エージェント API コールに渡された属性をブロックされます。

  • NewRelic.addCustomParameter(String key, String value)
  • NewRelic.addCustomParameter(String key, Number value)
  • NewRelic.setUserName(String name)
  • NewRelic.setAccountName(String name)
  • NewRelic.setProductName(String name)
noticeError 属性のキャプチャの防止

ハイセキュリティモードは、 各エージェントの noticeError API コール使って、属性を設定できません。なぜなら、顧客の機密データを含むことがあり得るためです。

例えば、Java 用エージェントでは、以下の NewRelic エージェント API コール経由で渡された属性はブロックされます。

  • NewRelic.noticeError(String message, Map<String, String> params)
  • NewRelic.noticeError(Throwable throwable, Map<String, String> params)
カスタムイベントの防止 ハイセキュリティモードでは、エージェント API を使って、カスタムイベントを作成することを許可しません。カスタムイベントに、機密データが含まれる可能性があるためです。例えば、.NET エージェントでは、RecordCustomEvent API コールは、ブロックされます。

最初のバージョンを有効にする

ハイセキュリティのオリジナルバージョンを利用するには、New Relic UI 上でハイセキュリティを有効にするだけです。URL を利用する際は、{ACCOUNT_ID} をお使いの New Relic account IDNew Relic アカウント ID に置き換えてください。

https://rpm.newrelic.com/accounts/{ACCOUNT_ID}/high_security
一度、アカウントのハイセキュリティを有効にすると、ハイセキュリティをオフにするには、New Relicのサポートが必要となります。

ハイセキュリティ V1 を有効にした結果

有効にすると、ハイセキュリティ V1 は、アカウントについて以下のことを保証します。

機能 注釈
エージェントの SSL の使用必須 ハイセキュリティモードでは、SSL 接続が必要です。SSL を利用しない接続は拒否されます。New Relic エージェントの最新バージョンすべてで、SSLをサポートしています。
HTTP のパラメーターのキャプチャの防止 顧客の機密データが含まれる可能性があるので HTTP パラメーターをキャプチャするようにエージェントが設定されている場合は、New Relic への接続を許可されません。リクエストパラメータを取り込むようにローカル設定を設定している場合、New Relic サーバーは接続を拒否し、エージェントはシャットダウンします。
生 SQL 文キャプチャの防止 顧客の機密データが含まれる可能性がある生 SQL 文をキャプチャするようにエージェントが設定されている場合は、New Relic への接続を許可されていません。リクエストパラメータを取り込むようにローカル設定を設定している場合、New Relic のサーバーは接続を拒否し、エージェントはシャットダウンします。

バージョン 1 からバージョン 2 への移行

以下は、ハイセキュリティに関する 2 つのバージョンにおける主な違いです。

  • ハイセキュリティをさらに安全にするためには、New Relic UI そしてローカルの New Relic の設定ファイルの両方でハイセキュリティモードを有効にする必要があります。ハイセキュリティ機能(v1)を使うには、New Relic UI でハイセキュリティモードを設定するだけです。
  • バージョン2 のハイセキュリティを利用すると、ユーザー属性、noticeError 属性、メッセージキューのパラメーターは送られません。バージョン1では違います。

V1 から V2 にアップデートするには、ローカルの設定ファイルに

high_security: true

の設定を追加します。

関連情報

設定ファイルの詳細については、お使いのエージェントのドキュメント を参照してください。