監査による設定変更の追跡

APM 管理者は、APM Team Center、WebView、および Workstation の機能を設定できます。 ほかにも多数の APM 管理者がいる大規模な環境では、APM 管理者は、これらの設定変更を監査によって追跡することができます。
apmdevops106
APM 管理者は、APM Team Center、WebView、および Workstation の機能を設定できます。 ほかにも多数の APM 管理者がいる大規模な環境では、APM 管理者は、これらの設定変更を監査によって追跡することができます。
変更は、監査ログ テキスト ファイルに表示されます。 ログは、ローカル コンピュータ上にのみ保存され、ログ ローテーションの設定に従って更新されます。 各ログには、変更のタイプ(変更されたもの、古い値と新しい値)、変更したユーザ、およびタイミングに関する情報が含まれます。
APM 管理者は、以下の操作を実行できます。
  • <EM_Home>\logs\audit
    ディレクトリにある監査ログの表示。
  • 監査ログ記録を使用して、システムの変更についての複数の監査ログ ファイルを保持すること。
  • 監査ログ管理を使用して、ログ ローテーションの設定を変更すること。
監査の設定
IntroscopeEnterpriseManager.properties ファイルの以下のプロパティを編集して、監査機能を設定します。
以下の手順に従います。
  1. <EM_Home>\config ディレクトリ内の IntroscopeEntepriseManager.properties ファイルに移動します。
  2. テキスト エディタでファイルを開きます。
  3. 監査を有効にするには、以下のプロパティを編集します。
    • introscope.apmserver.audit.enabled
      監査を有効化または無効化します。 有効な値は
      True
      または
      False
      です。
      デフォルト:
      True
      例:
      introscope.apmserver.audit.enabled=true
      このプロパティはホット設定可能です。 Enterprise Manager (EM)を再起動する必要はありません。
    • introscope.apmserver.audit.max.age
      監査レコードが Enterprise Manager データベースに保存される期間を日数単位で設定します。 その期間が過ぎると、データベース クリーンアップによって古いレコードが削除されます。
      デフォルト:
      0
      例:
      introscope.apmserver.audit.max.age=365
      Enterprise Manager を再起動する必要があります。
  4. (オプション) Apache のドキュメントを使用して、以下の Log4J 詳細機能を設定します。
    • log4j.appender.AUDIT_APPENDER=com.wily.org.apache.log4j.RollingFileAppender
    • log4j.appender.AUDIT_APPENDER.File=logs/audit/APMAudit.log
    • log4j.appender.AUDIT_APPENDER.append=true
    • log4j.appender.AUDIT_APPENDER.layout=com.wily.org.apache.log4j.PatternLayout
    • log4j.appender.AUDIT_APPENDER.layout.ConversionPattern=%d | %m%n
    • log4j.appender.AUDIT_APPENDER.MaxBackupIndex=5
    • log4j.appender.AUDIT_APPENDER.MaxFileSize=200MB
    • log4j.additivity.AUDIT_LOGGER=false
    • log4j.logger.AUDIT_LOGGER=INFO,AUDIT_APPENDER
      log4j.logger.AUDIT_LOGGER=INFO または log4j.logger.AUDIT_APPENDER プロパティを削除しないでください。 log4j.logger.AUDIT_LOGGER 値は INFO にのみ設定できます。 log4j.logger.AUDIT_APPENDER プロパティは編集できます。
記録されたイベントのエクスポート
EM から JSON 形式でレコードをエクスポートするには、REST API をコールします。
以下の手順に従います。
  1. 以下の http コマンドを使用して、記録されたイベントをエクスポートします。
    GET http://<EM_HOST>:<EM_WEB_PORT>/apm/appmap/audit?<parameters>
  2. コマンドに以下の 1 つまたは複数のパラメータ値を指定します。
    • from
      YYYY-MM-DDTHH:mm:ssZ 形式でタイムスタンプからの日付を示します
    • to
      YYYY-MM-DDTHH:mm:ssZ 形式でタイムスタンプまでの日付を示します
    • userName
      イベントを呼び出すユーザの名前を示します
    • action
      実行されるアクションを示します。値: CREATE、READ、UPDATE、DELETE、MOUNT、UNMOUNT、LOGIN、LOGIN_FAILED、LOGOUT、REGISTER、DEREGISTER、CANCEL_REGISTRATION、MAINTENANCE、ONLINE
    • type
      エンティティのタイプを示します。値: GROUPING、ALERT、SUMMARY_ALERT、METRIC_GROUPING、DIFFERENTIAL_CONTROL、CALCULATOR、DASHBOARD、DOWNTIME_SCHEDULE、MANAGEMENT_MODULE、REPORT、ATTRIBUTE、DECORATION_POLICY、UNIVERSE、AGENT、TOKEN、SETTING、USER、EXPERIENCE_CARD、AGENT_CARD、SNMP_COLLECTION、ACTION、PROVIDER
    • objectName
      DomainName|ModuleName|ObjectName の形式で、管理モジュール内のオブジェクトの名前を示します。例: SuperDomain|Default|New Calculator
例: 記録されたログイン イベントのエクスポート
このコマンドは、選択した期間で記録されたログイン イベントをエクスポートします。
GET http://<EM_HOST>:<EM_WEB_PORT>/apm/appmap/audit?from=2017-09-21T12:25:41Z&to=2017-02-22T15:20:43Z&action=LOGIN
期待される結果:
コマンドは、以下の形式で記録されたログイン イベントとログインの詳細の概要を返します。
{
"executionTime": "2017-09-22T13:11:07Z",
"actionName": "LOGIN",
"userName": "Admin",
"objectType": "USER",
"objectName": "Admin",
"data": {
"to": {
"_et": "UserAuditable",
"name": "Admin"
},
"details": {
"ipAddress": "127.0.0.1",
"hostname": "Admin01",
"clientType": "CLW",
"timezone": "-08:00",
"result": 1
},
"summary": "User 'Admin' logged in (address=127.0.0.1, hostname=Admin01, client=CLW, timezone=-08:00, result=1)"
}
}
例: ログ ファイル エクスポート
この例では、詳細な分析のためのログ ファイルのエクスポートの形式を示しています。
2017-10-09 10:32:24,263 | User 'Admin' logged in (address=127.0.0.1, hostname=localhost, client=WEBVIEW, timezone=+01:00, result=1)
2017-10-09 10:34:24,712 | User 'Admin' created a settings 'Test type card' (type='EXPERIENCE', data='{"name":"Test type card","universeId":"UNFWEnterprise Team Center","filter":null,"graphType":"VOLUME","groupAttributes":["type"],"owner":"admin","public":true}' (address=127.0.0.1, hostname=localhost, client=ATC, timezone=+01:00, result=1))
2017-10-09 10:36:04,470 | User 'Admin' updated the ALERT 'SuperDomain|System|CPU Tier Risks' (cautionTargetValue='60'->'70' (address=127.0.0.1, hostname=localhost, client=WEBVIEW, timezone=+01:00, result=1))
2017-10-09 10:36:38,823 | User 'Admin' created a ACTION 'SuperDomain|System|My Action' (address=127.0.0.1, hostname=localhost, client=WEBVIEW, timezone=+01:00, result=1)
2017-10-09 10:36:50,050 | User 'Admin' updated the ACTION 'SuperDomain|System|My Action' (isActive='false'->'true' (address=127.0.0.1, hostname=localhost, client=WEBVIEW, timezone=+01:00, result=1))
監査されたイベント
監査ログは、APM 管理者が行ったシステムの変更を記録します。 以下に、何に対するどのような変更がログに表示されるかを示します。
APM Team Center
  • ユーザ - ログイン、ログアウト、ログインの失敗
  • エクスペリエンス カード - 作成、削除、編集
  • パースペクティブ - 作成、削除、編集、デフォルトとして設定
  • カスタム属性 - 作成、削除、編集
  • ユニバース - 作成、削除、フィルタの変更、名前の変更、ユーザ権限の変更
  • 属性ルール - 作成、削除、編集、複製
  • プロバイダ - メンテナンスの設定、メンテナンスのキャンセル、登録解除、再登録のキャンセル、強制削除
  • セキュリティ トークン - 有効期限の設定、名前の変更、無効化
WebView:
  • メトリック グループ - 作成、編集、削除
  • 簡易アラート - 作成、編集、削除
  • サマリ アラート - 作成、編集、削除
  • SMTP メール送信アクション - 作成、編集、削除
  • コンソール通知アクション - 作成、編集、削除
  • トランザクション追跡アクション - 作成、編集、削除
  • UIM アラート アクション - 作成、編集、削除
  • 差異制御 - 作成、編集、削除
  • 管理モジュール - 編集
  • エージェント - マウント、マウント解除
Workstation
  • メトリック グループ - 作成、編集、削除
  • 簡易アラート - 作成、編集、削除
  • サマリ アラート - 作成、編集、削除
  • アラート ダウンタイム スケジュール - 作成、編集、削除
  • SMTP メール送信アクション - 作成、編集、削除
  • SNMP 送信アラート アクション - 作成、編集、削除
  • SNMP 通知送信アクション - 作成、編集、削除
  • シェル コマンド アクション - 作成、編集、削除
  • 計算機 - 作成、編集、削除
  • コンソール通知アクション - 作成、編集、削除
  • トランザクション追跡アクション - 作成、編集、削除
  • UIM アラート アクション - 作成、編集、削除
  • SNMP コレクション - 作成、編集、削除
  • レポート テンプレート - 作成、編集、削除
  • 管理モジュール - 作成、編集、削除
  • エージェント - マウント、マウント解除