AppDynamics オンプレミスのソリューションは、ソフトウェアの展開全体の完全な制御を維持する必要のあるお客様に適しています。このタイプの実装では、AppDynamics は、ソフトウェアや、ソフトウェアによって収集および処理されるデータにアクセスすることはできません。データセキュリティに関する厳密な制限要件に従う必要のあるお客様は、オンプレミス ソリューションを検討することができます。オンプレミスのお客様は、自己暗号化デバイスまたはその他の非製品ソリューションを使用して、データの暗号化を行う責任を負います。
ロールベースのアクセスコントロール
ロールベースのアクセアス制御(RBAC)を使用して、データ収集機能にアクセスできるユーザー数を制限できます。この制御を利用して、特定の機能、データ、分析、クエリ、APIにアクセスできるユーザーを制限できます。
各ユーザーロールの権限を指定することによって、データへのユーザーアクセスを制御できます。ユーザーアクセスを構成するには、Settings > Administration に移動します。「分析およびデータのセキュリティ」と「カスタムロールの管理」を参照してください。
Raw SQLキャプチャの抑制
アプリケーションモニタリングは、ランタイム値にバインドされた動的パラメータを使用してキャプチャされたプリペアドステートメントとしてRaw SQLを収集します。
機密データが含まれている場合、Raw SQLのキャプチャを無効にすることができます。Raw SQLキャプチャを無効にすると、SQLコールは元のフォームで表示されますが、機密データは疑問符のパラメータに置き換えられます。
アプリケーションの Raw SQL のキャプチャを無効にするには、Configuration > Instrumentation > Call Graph Settings > SQL Capture Settings に移動します。[Capture Raw SQL] をオフにします。
また、バインド変数のキャプチャを無効にすることもできます。バインド変数は、SQLステートメント内のリテラルデータに対するプレースホルダです。バインド変数のキャプチャを無効にすると、バインド変数の値は表示されなくなります。詳細については、「コールグラフ設定」を参照してください。
クエリリテラルの非表示
クエリには機密ユーザーデータが含まれている可能性があるため、デフォルトでDatabase Visibilityではクエリリテラルは非表示になります。
データベースに対してクエリリテラルが非表示になっていることを確認するには、Configuration に移動します。[Security] セクションで、[Remove literals from the queries] を選択していることを確認します。詳細については、クエリリテラルセキュリティの構成を参照してください。
また、SQLステートメントでリテラルデータのプレースホルダとしてバインド変数を使用することもできます。
エラーログの除外
アプリケーション モニタリングでは、カスタムロガーで指定したパラメータと一致する例外とエラーがログに記録されます。機密ペイロードデータを除外して、エラーログに表示されないようにすることができます。
アプリケーションでクラスを除外するには、次のようにします。
- [Tiers & Nodes] > [Actions] > [Configure App Server Agent] に移動します。
- Use Custom Configuration を選択します。
- [+] をクリックして、新しいエージェントプロパティを作成します。
- エージェントプロパティ名を exceptions-to-ignore に設定します。
- 除外するクラスの名前にエージェントプロパティ値を設定します。
詳細については、エラー検出を参照してください。
ログ分析値のマスク
構成時に、アプリケーション分析はアプリケーション サーバー エージェントからパフォーマンスデータを収集し、ログファイルからデータを収集して、エンドユーザーモニタリングからパフォーマンスおよびセッションデータを収集します。ログ分析データの機密情報はマスキングできます。
ログ分析データをマスキングするには、次のようにします。
- Analytics > Configuration > Log Analytics > Source Rules に移動します。
- マスキングを指定するソースルールをクリックします。
- ThreadName の横にある Field Management タブで、マスキングするデータの開始位置と終了位置と、マスキング値として使用する文字を指定できます。
「ソースルールを使用したログ分析の構成」を参照してください。
データコレクタの無効化
HTTPリクエストペイロード、Raw SQL、およびその他のユーザーデータのデータ収集を抑制できます。
Java エージェントの場合、コントローラ UI で disabled-features
ノードプロパティを構成します。
.NET エージェントの場合、config.xml
ファイルを編集し、無効にする機能の名前を disabled-features
プロパティに設定します。
<property name="disabled-features" value="RAW_SQL,LOG_PAYLOAD,METHOD_INV_DATA_COLLECTOR,HTTP_DATA_COLLECTOR,CUSTOM_EXIT_SNAP_DATA"/>
CODE
「App Agent Node Properties Reference」および「.NETエージェントの構成プロパティ」を参照してください。
環境変数内の機密データのフィルタ
Java環境変数およびシステムプロパティで検出された機密データをマスキングすることができます。機密データをマスキングするには、sensitive-data-filter
プロパティを app-agent-config.xml に追加します。有効な属性は applies-to
、match-type
、および match-pattern
です。
機密データをフィルタ処理する方法については、以下のページを参照してください。
データのプライバシーポリシーダイアログ
データ収集には、ユーザーが準拠する必要のある規制上のポリシー、法的ポリシー、およびお客様によって定義されたポリシーが含まれています。AppDynamics は、お客様またはお客様のユーザーが規制された情報またはその他の保護された情報を収集するために使用される可能性のある AppDynamics 製品の一部を構成すると、UI ダイアログの形式でデータプライバシーポリシーのリマインダーを表示します。
このカスタマイズ可能なステートメントは、ユーザーがデータ収集を構成できるAppDynamics UIのすべての領域に表示されます。ユーザーによってカスタマイズが行われなかった場合、AppDynamicsはデフォルトメッセージを表示します。
AppDynamics は、データのプライバシーポリシーダイアログを別のユーザーに表示するときに、イベントを記録します。