監視をセキュリティ保護する
監視ストアは、永続化ストアと同様に、Windows Server AppFabric アーキテクチャにおいて重要な役割を果たします。監視ストアには .NET Framework のデータが保存され、そのデータを使用して、アプリケーションの問題を診断したり、アプリケーションの動作状態を追跡したりできます。AppFabric には、追跡された監視データを表示するためのツールが用意されています。AppFabric の管理ツールを実行する管理者には、監視ストアに対するアクセス許可を付与する必要があります。また、実行時にはアプリケーションおよびシステム サービスにも、このデータ ストアに対する読み取りおよび書き込みを許可する必要があります。このトピックでは、監視データのセキュリティ、および監視データへのアクセスに使用する管理ツールのセキュリティを確保する方法について説明します。
監視ストアの使用は、アプリケーション スコープと管理スコープの両方に分類され、それぞれの領域において異なる方法でセキュリティを確保する必要があります。さまざまなセキュリティ グループに組み込むことによって、特定のアクセス許可を指定します。アプリケーション セキュリティ スコープは、実行時にアプリケーションにあるアクセス許可に影響を与え、アプリケーション サーバー ユーザーという概念的役割にマップされます。管理セキュリティ スコープは、管理者とシステム サービスが実行できるツールと関連操作に影響を与えます。これらのアクセス許可は、アプリケーション サーバー管理者およびアプリケーション サーバー オペレーターという概念的役割にマップされます。
監視データのセキュリティ保護
監視機能によって、WCF サービスおよび WF サービスで発生した追跡レコード、イベント、およびその他のデータが収集され、データベースに保存されます。アプリケーションは個人の識別が可能な情報やその他の機密データを収集し転送することがあります。そのデータが追跡レコードに含まれている場合、そのデータは監視ストアに保存されます。使用されている追跡プロファイルに応じて、メッセージや変数の内容がストアに保存されることもあります。複数のサーバー、サイト、およびアプリケーションが単一の監視ストアを共有できます。仕様により、監視データはストアを共有するサーバーおよびサイトの間で集約されます。そのため、大規模な環境において、数千に及ぶ可能性があるインスタンスのアクティビティの監視が容易になります。データが監視ストアに保存されると、AS_Administrators グループのメンバーと SQL Server sysadmin および dbo の役割のすべてのメンバーがそのデータを表示できるようになります AS_Observers グループのメンバーは ASMonitoringDBReader グループに属し、監視データベースでのパブリック ビューをとおして監視データを読み取ることができます。追跡データは、誤操作による露出や意図的な露出に対しては脆弱ですが、リスクを軽減するための手順を実施することが可能です。
イベント コレクション サービスは監視データのセキュリティを保護するうえで役に立ちます。このサービスによって Windows イベント トレーシング (ETW) セッションからのイベントが監視データベースに書き込まれます。イベント コレクション サービスによって開始された ETW セッションに対する "書き込み" アクセス許可を持つアプリケーションのみが、収集対象のイベントをそのセッションに書き込むことができます。既定では、イベント コレクション サービスは NT_AUTHORITY\LOCAL SERVICE として実行されます。イベント コレクション サービス (NT SERVICE\AppFabricEventCollectionService) 固有の SID が AS_Administrators グループに追加されます。これにより、監視データベースに対する読み取りおよび書き込みアクセス権が与えられます。AS_Administrators はデータベース役割 ASMonitoringDBAdmin に属しているためです。AppFabric コマンドレット スクリプトを使用して監視データベースを作成する場合、これらすべての役割およびグループが作成され、正しく初期化されます。別のユーザーとして イベント コレクション サービスを実行する必要がある場合、このプロセスの詳細については、「イベント コレクションのセキュリティ」を参照してください。
ヒント
AppFabric は IIS の下で実行されるので、いくつかの追加機能を利用できます。IIS では、使用状況を分析するために、標準 Web サーバー アクセス ログが生成されます。また、IIS は Windows Server と統合されているので、システム監査を利用してリソースの使用状況をより安全に監視できます。たとえば、セキュリティで保護されたファイルへのアクセス試行失敗を Windows Server イベント ログに記録し、既存サーバーの管理に使用しているのと同じツールを使用して監査することができます。
監視ストア内のデータをセキュリティで保護するには、次の方法があります。
**異なる監視ストアを使用します。**同じサーバーまたは異なるサーバーに別の監視ストアを作成し、構成できます。これを行うには、AppFabric コマンドレットを使用してストアを作成し、[データベース構成の監視] ページを使用して構成します。その後、特定のアプリケーションでそのストアのみ使用するよう構成することができます。これにより、指定したアプリケーションに、他のアプリケーションからはアクセスできない専用の監視データ ストアが提供されます。
監視機能を操作します。 AppFabric によって IIS マネージャーに追加された拡張機能を使用して、アプリケーションのすべてのワークフロー サービス、Web サイトのすべてのアプリケーション、またはサーバー上のすべての Web サイトに対して、監視機能を有効または無効にすることができます。IIS および WAS 階層の上位レベルで監視ポリシーを定義し、それよりも下位にあるすべてのレベルにポリシー設定を継承することができます。
Windows イベント トレーシング セッションのセキュリティ
イベント コレクション サービスによって Windows イベント トレーシング (ETW) セッションからイベントが収集され、監視データベースに保存されます。IIS アプリケーション プール ID にセキュリティ アクセス許可を割り当てることにより、どのアプリケーションが イベント コレクション サービス ETW セッションにイベントを書き込むかを制御できます。たとえば、MACHINE\MyUser などの権限の低い ID で実行されているアプリケーション プールに、追跡セッションにイベントを記録することを許可する必要があるとします。これを行うには、TRACELOG_LOG_EVENT というイベント アクセス許可を MACHINE\MyUser に割り当てます。これらのアクセス許可を割り当てるには、次の方法があります。
EventAccessControl (https://go.microsoft.com/fwlink/?LinkId=179742) Win32 API を使用して、ETW セッションに書き込みができるように ID のアクセス許可を変更できます。
パフォーマンス モニター (PERFMON.EXE) を使用すると、特定の ID にセキュリティ アクセス許可を割り当てることによって、どのアプリケーションが ETW セッションにイベントを書き込むことができるかを制御できます。たとえば、追跡セッションが SECURE モードで実行されている場合に、MACHINE\MyUser の ID で実行しているアプリケーション プールに対して、追跡セッションにイベントを記録することを許可できます。これを行うには、パフォーマンス モニターにある [AppFabric イベント コレクター セッション] の [セキュリティ] タブで、TRACELOG_LOG_EVENT のアクセス許可を MACHINE\MyUser に付与します。
AppFabric イベント コレクター セッションのセキュリティ設定でグループまたはユーザーのアクセス許可を変更する場合は、最初にそのセッションを停止する必要があります。そうしないと、変更した設定が保存されません。
このセクションの内容
2011-12-05