トランザクション セキュリティのAPM イベントのアラートを生成します。

Microsoft.SystemCenter.Apm.MvcTransaction.AlertSecurityAspectRule (Rule)

Knowledge Base article:

概要

定義された期間のセキュリティ イベントの合計発生数がモニターのしきい値を超えると、インスタンスの状態が異常になります。

原因

セキュリティ アラートは、アプリケーションが外部リソースにアクセスしようとしたときに、承認、認証、アクセス許可の問題が発生した場合に生成されます。アラートの詳細フィールドには、トラブルシューティング用に、リソースがアクセスして実行できなかった関数の名前と処理状況の説明が表示されます。通常、セキュリティの例外の原因は、ソース コードにアクセスしなくても環境や構成の変更によって解決できる問題です。これらの問題は、データベース サーバー、Web サービス、I/O リソース、Active Directory へのアクセスの承認、認証、許可の問題によって発生する可能性があります。

解決方法

セキュリティ アラートは、外部リソースへのアクセスの問題が原因で、未処理の例外が発生した場合に生成されます。これらの問題を解決するには、次のことを確認します。

1) アラートとイベントの説明

2) 処理の対象 (例: Microsoft SQL Server)

3) 操作 - リソースに対して実行しようとしたメソッド (例: サーバーへの接続)

4) セキュリティ コンテキスト - 接続、ユーザー、および ID の詳細。上記の情報を確認したら、アプリケーションの構成かサーバー/ドメイン側で、アカウント、パスワード、アクセス許可を更新します。

Element properties:

TargetMicrosoft.SystemCenter.Apm.MvcTransaction
CategoryAlert
EnabledFalse
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableFalse
Alert Message
トランザクション セキュリティ例外
{1} のアプリケーション {0} のトランザクション {5} でセキュリティ障害が発生しました。種類 '{2}' の '{3}' という例外メッセージが '{4}' でスローされました。詳細については、次のリンク先を参照してください: $Url[Query='{6}']/APMEvent$

Member Modules:

ID Module Type TypeId RunAs 
LOBProvider DataSource Microsoft.SystemCenter.Apm.MvcTransaction.LobDataProvider.ExceptionAspect Default
AlertWriteAction WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SystemCenter.Apm.MvcTransaction.AlertSecurityAspectRule" Enabled="false" ConfirmDelivery="false" Target="Microsoft.SystemCenter.Apm.MvcTransaction" Remotable="false">
<Category>Alert</Category>
<DataSources>
<DataSource ID="LOBProvider" TypeID="Microsoft.SystemCenter.Apm.MvcTransaction.LobDataProvider.ExceptionAspect">
<Name>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</Name>
<AspectType>security</AspectType>
<ControllerName>$Target/Property[Type="Microsoft.SystemCenter.Apm.MvcTransaction"]/ControllerName$</ControllerName>
<ActionName>$Target/Property[Type="Microsoft.SystemCenter.Apm.MvcTransaction"]/ActionName$</ActionName>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="AlertWriteAction" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name='Microsoft.SystemCenter.Apm.MvcTransaction.AlertSecurityAspectRule.AlertMessage']$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter2>
<AlertParameter3>$Data/EventData/exceptionclass$</AlertParameter3>
<AlertParameter4>$Data/EventData/message$</AlertParameter4>
<AlertParameter5>$Data/EventData/name$</AlertParameter5>
<AlertParameter6>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.TransactionBase"]/TransactionName$</AlertParameter6>
<AlertParameter7>$Data/EventData/ViewDetail$</AlertParameter7>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventData/eventConsolidationHash$</SuppressionValue>
</Suppression>
<Custom1>Security</Custom1>
</WriteAction>
</WriteActions>
</Rule>