Mac 用の DEX チェック定義

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:17分
  • Mac 用のチェック定義は、Mac デバイスのパフォーマンス、セキュリティ、および適合率を評価する、事前定義されたルールと基準のセットです。これらのチェックでは、CPU 使用率、メモリ使用率、バッテリーの詳細、ファイアウォールステータスなどのさまざまな面をカバーできます。

    macOS システムの場合、データ全体を取得するには、後続のコンテンツを /etc/sudoers に含めます。

    エージェントのバージョン 3.4.0 以前の場合:
    _servicenow ALL=NOPASSWD: SETENV: /Library/Caches/servicenow/agent-client-collector/osquery/bin/osqueryi *, /usr/bin/mdls, /usr/bin/log, /bin/kill, /bin/launchctl
    Defaults:_servicenow !requiretty
    エージェントのバージョン 3.4.1 以降の場合:
    _servicenow ALL=NOPASSWD: SETENV: /Library/Application\ Support/servicenow/agent-client-collector/cache/osquery/bin/osqueryi *, /usr/bin/mdls, /usr/bin/log, /bin/kill, /bin/launchctl
     Defaults:_servicenow !requiretty
    注:
    チェック定義と取得可能な関連データを構成できます。リストされている一部のチェック定義により、個人情報を含むデータや個人情報と見なされるデータが取得される場合があります。
    適切な sudo 構成を確保するには、次のファイルを削除することをお勧めします
    /private/etc/sudoers.d/_servicenow

    チェック定義 - アプリケーション (メトリクス)

    DEX は、アプリケーションの実行中にのみアクセスできる次のチェック定義を提供します。ただし、os.mac.check-app-version、os.mac.check-app-is-installed、os.mac.check-app-last-access-time、os.mac.check-app-last-updated チェック定義は例外であり、これらはアプリケーションが実行していないときでもアクセスできます。チェック定義パラメーターでは、次のようになります。
    • appName = アプリケーション名。例:Webex。
    • appSysId = アプリケーションの sys id。
    • primaryProcess = パイプ記号 (|) で区切られたアプリケーションのプライマリプロセスのリスト。エンドポイントデバイスに存在する最初のプロセスが優先されます。例 1:Webex.app。例 2:Microsoft Teams.app | Microsoft Teams Classic.app。
      注:
      Teams アプリケーションのプライマリプロセスが、あるエンドポイントデバイスでは Microsoft Teams.app で、別のエンドポイントデバイスでは Microsoft Teams classic.app である場合、エンドポイントデバイスでプロセスの可用性に基づいて優先度を決定する際に、エンドポイントデバイスに最初に存在するプロセスが優先されます。
    • secondaryProcesses = パイプ記号 (|) で区切られたアプリケーションのセカンダリプロセスのリスト。例:Cisco WebEx Start.app | webexmtaV2.app。
    チェック定義名 チェック定義パラメーター 説明
    os.mac.check-app-cpu-usage
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションで使用されている CPU リソースの量を確認します。
    os.mac.check-app-memory-usage
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションで使用されているメモリリソースの量を確認します。
    os.mac.check-app-listening-ports
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    受信ネットワークトラフィックがアプリケーションに到達できる、開いているポート番号を取得します。
    os.mac.check-app-last-updated
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    最新のアプリケーション更新インストールの日時を確認します。
    注:
    このチェック定義では、アプリケーションが実行中ステータスである必要はありません。
    os.mac.check-app-version
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションのバージョン番号を取得します。
    注:
    • このチェック定義では、アプリケーションが実行中ステータスである必要はありません。
    • アプリケーションにバージョンがない場合、チェック定義はそのアプリケーションに対して文字列「unversioned」を返します。
    os.mac.check-app-is-installed
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションがデバイスにインストールされているかどうかを確認します。
    注:
    このチェック定義では、アプリケーションが実行中ステータスである必要はありません。
    os.mac.check-app-is-running
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションが現在実行中ステータスかどうかを確認します。
    os.mac.check-app-uptime
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    指定されたアプリケーションのアップタイムをチェックします。
    os.mac.check-app-last-access-time
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションが実行された最新の時間を確認します。
    注:
    • このチェック定義では、アプリケーションが実行中ステータスである必要はありません。
    • 過去 7 日以内にアプリケーションが実行されていない場合、最終アクセス時間は空になります。
    os.mac.check-app-io-usage-read
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションの読み取り I/O (入力/出力) 操作の使用状況を確認します。
    os.mac.check-app-io-usage-write
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションの書き込み I/O (入力/出力) 操作の使用状況を確認します。
    os.mac.check-app-domain-network-latency
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    • --domain=<domain of the application>
    アプリケーションドメインのネットワークレイテンシをフェッチします。
    os.mac.check-app-crashes
    • --appName=<application name>
    • --primaryProcess=<primary process name>
    • --secondaryProcesses=<list of secondary processes separated by a pipe symbol>
    • --appSysId=<sys id of the application>
    アプリケーションのクラッシュ回数とクラッシュの詳細をフェッチします。

    チェック定義 - デバイス (メトリクス)

    DEX は、デバイスに対して次のタイプのチェック定義を提供します。
    チェック定義名 説明
    os.mac.check-system-cpu-usage CPU 使用率を確認します。
    os.mac.check-system-cpu-details CPU 名、物理コアと論理コアの数、およびアーキテクチャ情報を取得します。
    os.mac.check-system-memory-usage システムメモリ使用率を確認します。
    os.mac.check-system-last-access-time 現在のデバイスが最後にアクセスされた時刻をチェックします。
    注:
    このチェック定義はロックされたデバイスとロック解除されたデバイスで機能します。
    os.mac.check-system-uptime システムが最後に起動されてからの経過時間を確認します。
    os.mac.check-system-time UNIX タイムスタンプを使用して、協定世界時 (UTC) で現在の時刻を確認します。
    os.mac.check-system-device-crashes デバイス上のさまざまなクラッシュの詳細を取得します。
    注:
    このチェックでは、過去 5 分間にデバイスログに存在するカーネルパニックをフェッチします。
    os.mac.check-system-device-details シャーシのタイプ、モデル、およびシリアル番号を取得します。
    os.mac.check-system-device-events 指定された時間間隔中にデバイスで発生したイベントの詳細を取得します。Mac のイベントには、前回の起動、ログインしたユーザー、インストール済みソフトウェア、更新済みソフトウェア、追加されたユーザー、パスワードのリセットなどがあります。
    os.mac.check-system-disk-details 合計スペース、使用済みスペース、空きスペースなどのディスクの詳細を取得します (バイト単位)。
    os.mac.check-system-disk-io-usage-read 1 秒あたりのディスク読み取りバイト数を取得します。
    os.mac.check-system-disk-io-usage-write 1 秒あたりのディスク書き込みバイト数を取得します。
    os.mac.check-system-disk-usage ディスク使用領域を合計領域に対する割合として取得します。
    os.mac.check-system-os-details オペレーティングシステムの名前、バージョン、プラットフォーム、アーキテクチャ、およびインストール日を取得します。
    os.mac.check-system-net-bytes-incoming すべてのネットワークデバイスでの 1 秒あたりの受信ネットワークバイト数を取得します。
    os.mac.check-system-net-bytes-outgoing すべてのネットワークデバイスでの 1 秒あたりの送信ネットワークバイト数を取得します。
    os.mac.check-system-logged-in-users 現在デバイスにログインしているユーザーの詳細を取得します。
    os.mac.check-system-session-details 現在ログインしているユーザーのセッション時間を取得します (分単位)。
    os.mac.check-system-network-details イーサネット、Wi-Fi、およびその他の関連情報を含むネットワークの詳細を取得します。
    os.mac.check-system-battery-details バッテリー残量、設計電圧、推定実行時間、バッテリーの最大容量など、バッテリー関連データを取得します。
    注:
    • このチェック定義は、バッテリーを搭載していないため、仮想マシン (VM) またはデスクトップには適用されません。
    • 現在の容量が設計容量より大きい場合、バッテリーは 100% に四捨五入されます。
    os.mac.check-system-battery-charge-percentage デバイスにあるバッテリーの充電率を取得します。
    注:
    • このチェック定義は、バッテリーを搭載していないため、仮想マシン (VM) またはデスクトップには適用されません。
    • 現在の容量が設計容量より大きい場合、バッテリーは 100% に四捨五入されます。
    os.mac.check-system-firewall-enabled オペレーティングシステムのファイアウォールがアクティブで有効になっているかどうかを確認します。
    os.mac.check-system-pending-updates 保留中のソフトウェア更新のステータスを確認します。
    os.mac.check-system-admin-users ローカルアドミニストレーター権限を持つすべてのユーザーアカウントを取得します。
    os.mac.check-system-reboot-details デバイスの再起動の詳細を取得します。
    os.mac.check-system-os-setup-details デバイスのおおよその OS 経過時間を取得します。

    os.mac.check-system-compliance-details

    システムのコンプライアンスの詳細を取得します。これには、すべての構成済みアプリと非準拠のメトリクス値のリストが含まれ、それに基づいてコンプライアンス評価が計算されます。

    注:
    • このチェック定義は、次の詳細を提供します。
      • アプリが準拠していると表示される条件:プライマリプロセスに記載されているすべてのプロセスが実行されている必要があります。
      • メトリクス値が準拠していると判断するための条件:値は、構成された想定値と一致する必要があります。
    • スコアは、スコア = (苦情アプリケーション + 準拠メトリクス値) / (アプリケーションとメトリクス値の合計 - 失敗したもの) *100 の計算式を使用して算出されます。
    os.mac.check-system-vpn-details デバイスの VPN の詳細を取得します。
    os.mac.check-system-energy-consumption 今後 5 分間に Mac マシンによって消費されるエネルギーを取得します。
    注:
    このチェック定義の重要な詳細を以下に示します。
    • /usr/bin/powermetricsをsudo権限に追加する必要があります。
    • 今後 5 分間に消費されるエネルギーを計算するため、チェックが完了するまでに約 5 分かかります
    • エージェントが M1、M2、M3 マシンでロゼッタを有効にした状態でインストールされている場合、このチェック定義は機能しません。
    os.mac.check-system-power-consumption Mac デバイスの消費電力を取得します。

    チェック定義 - 診断アクション

    DEX は、診断アクションに対して次のタイプのチェック定義を提供します。
    チェック定義名 チェック定義パラメーター 説明
    os.mac.check-app-process-ids --process_name=<process name> アプリケーションに関連付けられている親プロセスとすべての子プロセスの両方のプロセス ID (PID) を取得します。
    os.mac.check-process-cpu 該当なし 実行中のすべてのプロセスのリストを、CPU 使用率、CPU 時間、プロセス ID (PID)、親プロセス ID (PPID)、および名前とともに取得します。
    os.mac.check-process-memory 該当なし 実行中のすべてのプロセスのリストを、メモリ使用量 (KB 単位)、プロセス ID (PID)、親プロセス ID (PPID)、および名前とともに取得します。
    os.mac.check-process-data 該当なし 現在実行中のすべてのプロセスの CPU 使用率、メモリ使用率、およびディスク使用率を取得します。
    os.mac.check-process-disk 該当なし 実行中のすべてのプロセスのリストを、ディスク使用量 (バイト単位)、プロセス ID (PID)、親プロセス ID (PPID)、および名前とともに取得します。
    os.mac.check-traceroute

    --url=<url>

    --max_hops = <default value is 65>

    --timeout = <default value is 5>

    各ネットワークホップの IP アドレス、ドメイン名、および往復時間 (RTT) を取得します。
    os.mac.check-ping-test --url=<url> 指定された URL に ping 要求を送信し、URL が現在到達可能かどうかを示す接続ステータスを返します。
    os.mac.check-services-data service_type =<サービスのタイプ (ユーザー、システム、またはすべてのいずれか) PID、サービス名、ステータス、サービスタイプを持つすべてのサービスのリストを取得します。

    チェック定義 - 修復アクション

    DEX は、修復アクションに対して次のタイプのチェック定義を提供します。
    チェック定義名 チェック定義パラメーター 説明
    os.mac.action-kill-process

    --pid=<process id>

    または

    --process_name=<executable file name>

    注:
    プロセス ID はアプリケーション名よりも優先されます。
    プロセス ID (PID) または実行可能 (.app) ファイル名で指定された 1 つまたは複数の実行中のプロセスを終了します。
    os.mac.action-restart-service --service_name=<service name> システムへの入力としてサービス名を受け取る、ログ記録されたユーザーサービスを再起動します。