DEX Definitionen für überprüfen macOS

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 9 Minuten Lesedauer
  • Definitionen für überprüfen macOS Sind vordefinierte Sätze von Regeln und Kriterien, die die Leistung, Sicherheit und Konformität von bewerten macOS Geräte. Diese Prüfungen können verschiedene Aspekte abdecken, zum Beispiel CPU-Auslastung, Speichernutzung, Akkudaten und Firewall-Status.

    Um in macOS-Systemen die gesamten Daten abzurufen, fügen Sie die folgenden Inhalte in /etc/sudoers ein.

    Für Agent Version 3.4.0 oder früher:
    _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
    Für Agent Version 3.4.1 oder höher:
    _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
    Hinweis:
    Sie können die Prüfungsdefinitionen und die zugehörigen abrufbaren Daten konfigurieren. Einige der aufgeführten Prüfungsdefinitionen rufen möglicherweise Daten ab, die personenbezogene Daten enthalten oder als solche gelten.
    Um die richtige sudo-Konfiguration heraufzustufen, entfernen Sie die folgende Datei:
    /private/etc/sudoers.d/_servicenow

    Prüfungsdefinitionen – Anwendung (Metriken)

    DEX Stellt die folgenden Prüfungsdefinitionen bereit, die während der Ausführung der Anwendung verfügbar sind, mit Ausnahme der unten aufgeführten, die auch dann zugänglich bleiben, wenn die Anwendung nicht ausgeführt wird:
    • os.mac.check-app-version
    • os.mac.check-app-is-installed
    • os.mac.check-app-last-access-time
    • os.mac.check-app-last-updated
    In den Parametern der Prüfungsdefinition:
    • appName = Anwendungsname. Beispiel: Webex.
    • AppSysId = sys_ID der Anwendung.
    • primaryProcess = Auflistung der primären Prozesse für die Anwendung mit dem Pipeline-Symbol ( | ) als Trennzeichen. Der erste Prozess, der auf dem Endpunktgerät vorhanden ist, erhält Priorität. Beispiel: WebEx.App oder Microsoft Teams.App | Microsoft Teams Classic.App.
      Hinweis:
      Wenn Sie die Priorität basierend auf der Prozessverfügbarkeit auf einem Endpunktgerät bestimmen, befolgen Sie diese Logik: Wenn der primäre Prozess für die Teams-Anwendung Microsoft Teams.App auf einem Endpunktgerät und Microsoft Teams Classic.App auf einem anderen Endpunktgerät ist, wird der Prozess, der zuerst auf dem Endpunktgerät vorhanden ist, Vorrang erhalten.
    • secondaryProcesses = Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol ( | ) als Trennzeichen. Beispiel: Cisco WebEx Start.App | webexmtaV2.App.
    Definitionsnamen überprüfen Parameter der Prüfungsdefinition Beschreibung
    os.mac.check-app-cpu-usage
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft die Menge der von der Anwendung beanspruchten CPU-Ressourcen.
    os.mac.check-app-memory-usage
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft die Menge der von der Anwendung beanspruchten Arbeitsspeicherressourcen.
    os.mac.check-app-listening-ports
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Ruft die offenen Portnummern ab, über die eingehender Netzwerkdatenverkehr die Anwendung erreichen kann.
    os.mac.check-app-last-updated
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft Uhrzeit und Datum der letzten Installation eines Anwendungs-Updates.
    Hinweis:
    Diese Prüfungsdefinition erfordert nicht, dass sich die Anwendung im Status „ausgeführt“ befindet.
    os.mac.check-app-version
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Ruft die Versionsnummer der Anwendung ab.
    Hinweis:
    • Für diese Prüfungsdefinition muss die Anwendung nicht ausgeführt werden.
    • Wenn eine Anwendung keine Version hat, gibt die Prüfungsdefinition die Zeichenfolge „unversioniert“ für diese Anwendung zurück.
    os.mac.check-app-is-installed
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft, ob die Anwendung auf dem Gerät installiert ist oder nicht.
    Hinweis:
    Diese Prüfungsdefinition erfordert nicht, dass sich die Anwendung im Status „ausgeführt“ befindet.
    os.mac.check-app-is-running
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Überprüft, ob sich die Anwendung im Ausführungsstatus befindet oder nicht.
    os.mac.check-app-uptime
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft die Betriebszeit der betreffenden Anwendung.
    os.mac.check-app-last-access-time
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft, wann die Anwendung zuletzt ausgeführt wurde.
    Hinweis:
    • Diese Prüfungsdefinition erfordert nicht, dass sich die Anwendung im Status „ausgeführt“ befindet.
    • Wenn die Anwendung in den letzten 7 Tagen nicht vom Anwender ausgeführt wurde, ist die letzte Zugriffszeit leer.
    os.mac.check-app-io-usage-read
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft die Verwendung von E/A-Lesevorgängen (Eingabe/Ausgabe) durch die Anwendung.
    os.mac.check-app-io-usage-write
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Prüft die Verwendung von E/A-Schreibvorgängen (Eingabe/Ausgabe) durch die Anwendung.
    os.mac.check-app-domain-network-latency
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    • --domain=<Domäne der Anwendung>
    Ruft die Netzwerklatenz der Anwendungsdomäne ab.
    os.mac.check-app-crashes
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Ruft die Anzahl der Abstürze und Absturzdetails der Anwendung ab.
    os.mac.check-app-freezes
    • --appName=<Anwendungsname>
    • --primaryProcess=<Name des primären Prozesses>
    • --secondaryProcesses=<Auflistung der sekundären Prozesse für die Anwendung mit dem Pipeline-Symbol als Trennzeichen>
    • --appSysId=<Sys-ID der Anwendung>
    Ruft die Anzahl der App-Fixierungen in den letzten 5 Minuten ab und fixiert Details der Anwendung.

    Prüfungsdefinitionen – Gerät (Metriken)

    DEX stellt die folgenden Arten von Prüfungsdefinitionen für das Gerät bereit.
    Name der Prüfungsdefinition Beschreibung
    os.mac.check-system-cpu-usage Prüft die CPU-Auslastung.
    os.mac.check-system-cpu-details Ruft den CPU-Namen, die Anzahl der physischen und logischen Kerne sowie Informationen zur Architektur ab.
    os.mac.check-system-memory-usage Prüft die Auslastung des Systemarbeitsspeichers.
    os.mac.check-system-last-access-time Überprüft, wann zuletzt auf das aktuelle Gerät zugegriffen wurde.
    Hinweis:
    Diese Prüfungsdefinition funktioniert auf gesperrten und entsperrten Geräten.
    os.mac.check-system-uptime Prüft die seit dem letzten Systemstart verstrichene Zeit.
    os.mac.check-system-time Prüft die aktuelle Uhrzeit in Coordinated Universal Time (UTC) anhand des UNIX-Zeitstempels.
    os.mac.check-system-device-crashs Ruft Detailinformationen über verschiedene Abstürze auf Ihrem Gerät ab.
    Hinweis:
    Diese Prüfung ruft Kernel-Panics ab, die in den letzten fünf Minuten in den Geräteprotokollen vorhanden sind.
    os.mac.check-system-device-details Ruft Typ, Modell und Seriennummer des Gehäuses ab.
    os.mac.check-system-device-events Ruft die Details von Ereignissen ab, die in dem angegebenen Zeitintervall auf dem Gerät aufgetreten sind. Ereignisse für macOS Einschließen: Letzter Start, angemeldete Anwender, installierte Software, aktualisierte Software, hinzugefügte Anwender, und Passwörter zurücksetzen.
    os.mac.check-system-disk-details Ruft Datenträgerdetails ab, z. B. Speicherplatz insgesamt, belegter Speicherplatz und freier Speicherplatz in Byte.
    os.mac.check-system-disk-io-usage-read Ruft die Anzahl der pro Sekunde gelesenen Datenträger-Bytes ab.
    os.mac.check-system-disk-io-usage-write Ruft die Anzahl der pro Sekunde geschriebenen Datenträger-Bytes ab.
    os.mac.check-system-disk-usage Ruft den vom Datenträger beanspruchten Speicherplatz als Prozentsatz des Gesamtspeicherplatzes ab.
    os.mac.check-system-os-details Ruft Name, Version, Plattform, Architektur und Installationsdatum des Betriebssystems ab.
    os.mac.check-system-net-bytes-incoming Ruft für alle Netzwerkgeräte die Anzahl der pro Sekunde über das Netzwerk eingehenden Bytes ab.
    os.mac.check-system-net-bytes-outgoing Ruft für alle Netzwerkgeräte die Anzahl der pro Sekunde über das Netzwerk ausgehenden Bytes ab.
    os.mac.check-system-logged-in-users Ruft Detailinformationen zu den aktuell beim Gerät angemeldeten Benutzern ab.
    os.mac.check-system-session-details Ruft die Sitzungszeit der derzeit angemeldeten Anwender in Minuten ab.
    os.mac.check-system-network-details Ruft Detailinformationen zum Netzwerk ab, zum Beispiel Ethernet, WLAN und andere relevante Angaben.
    os.mac.check-system-battery-details Ruft Informationen zum Akku ab, zum Beispiel den verbleibenden Akkuprozentsatz, die ausgelegte Spannung, die geschätzte Laufzeit und die maximale Kapazität des Akkus.
    Hinweis:
    • Diese Prüfungsdefinition gilt nicht für virtuelle Computer (VMs) oder Desktops, da diese keine Akkus haben.
    • Wenn die aktuelle Kapazität größer als die vorgesehene Kapazität ist, wird der Akku auf 100 % abgerundet.
    os.mac.check-system-battery-charge-percentage Ruft den Ladestand in Prozent für die im Gerät vorhandenen Akkus ab.
    Hinweis:
    • Diese Prüfungsdefinition gilt nicht für virtuelle Computer (VMs) oder Desktops, da diese keine Akkus haben.
    • Wenn die aktuelle Kapazität größer als die vorgesehene Kapazität ist, wird der Akku auf 100 % abgerundet.
    os.mac.check-system-firewall-enabled Prüft, ob die Firewall des Betriebssystems aktiv ist.
    os.mac.check-system-pending-updates Prüft den Status ausstehender Software-Updates.
    os.mac.check-system-admin-users Ruft alle Benutzeraccounts mit lokalen Administratorrechten ab.
    os.mac.check-system-reboot-details Ruft Detailinformationen zu Geräteneustarts ab.
    os.mac.check-system-os-setup-details Ruft das ungefähre Alter des Betriebssystems für das Gerät ab.

    os.mac.check-system-compliance-details

    Ruft die Compliance-Details des Systems ab. Dies umfasst die Liste aller konfigurierten Apps und Metrikwerte, die nicht konform sind, und berechnet eine Compliance-Bewertung basierend darauf.

    Hinweis:
    • Diese Prüfungsdefinition enthält die folgenden Details:
      • Bedingung, dass die App als konform gilt : Jeder im primären Prozess erwähnte Prozess muss ausgeführt werden.
      • Bedingung für den Metrikwert, der als konform bezeichnet werden soll : Wert muss mit dem konfigurierten erwarteten Wert übereinstimmen.
    • Die Punktzahl wird dann mit dieser Formel berechnet: Punktzahl = ( Beschwerdanwendung + konformer Metrikwert) / (Anwendungen insgesamt und Metrikwert – Fehlgeschlagene) *100
    os.mac.check-system-vpn-details Rufen Sie die VPN-Details für Ihr Gerät ab.
    os.mac.check-system-energy-consumption Ruft den Energieverbrauch des Mac-Computers in den nächsten 5 Minuten ab.
    Hinweis:
    Beachten Sie Folgendes:
    • /Usr/bin/powermetrics muss sudo-Berechtigungen hinzugefügt werden.
    • Die Prüfung dauert etwa fünf Minuten, da der Energieverbrauch in den nächsten fünf Minuten berechnet wird
    • Diese Prüfungsdefinition funktioniert nicht, wenn der Agent mit aktiviertem rosetta auf M1-, M2-, M3-Computern installiert ist.
    os.mac.check-system-power-consumption Ruft den Stromverbrauch für das mac-Gerät ab.
    os.mac.check-system-custom-query-on-change Führt die anwenderdefinierte Abfrage aus, die in den Parametern bereitgestellt wird. Gibt den Wert nur zurück, wenn er geändert wird.
    os.all.check.internal.get-device-configuration-on-change Ruft die Konfigurationen eines Geräts ab. Beispiel: Sudo konfiguriert, Debuggen auf, Agent-Anwender usw. Wird nur ausgeführt, wenn sich der Wert ändert.

    Prüfungsdefinitionen – Diagnoseaktionen

    DEX stellt die folgenden Arten von Prüfungsdefinitionen für Diagnoseaktionen bereit.
    Name der Prüfungsdefinition Parameter der Prüfungsdefinition Beschreibung
    os.mac.check-app-process-ids --process_name=<Prozessname> Ruft die Prozess-IDs (PIDs) der übergeordneten und aller untergeordneten Prozesse ab, die der Anwendung zugeordnet sind.
    os.mac.check-process-cpu N/V Ruft eine Liste aller laufenden Prozesse mit Prozentsatz der CPU-Auslastung, CPU-Zeit, Prozess-ID (PID), ID des übergeordneten Prozesses (Parent Process ID, PPID) und Namen ab.
    os.mac.check-process-memory N/V Ruft eine Liste aller laufenden Prozesse mit Arbeitsspeichernutzung in Kilobyte (KB), Prozess-ID (PID), ID des übergeordneten Prozesses (PPID) und Namen ab.
    os.mac.check-process-data N/V Ruft die CPU-Auslastung, Arbeitsspeichernutzung und Datenträgernutzung aller aktuell laufenden Prozesse ab.
    os.mac.check-process-disk N/V Ruft eine Liste aller laufenden Prozesse mit Datenträgernutzung in Byte, Prozess-ID (PID), ID des übergeordneten Prozesses (PPID) und Namen ab.
    os.mac.check-traceroute --url=<URL>

    --max_hops=<Standardwert ist 65>

    --timeout=<Standardwert ist 5>

    Ruft die IP-Adresse, den Domänennamen und die Roundtrip-Zeit (RTT) für jeden Netzwerk-Hop ab.
    os.mac.check-ping-test --url=<URL> Sendet eine Ping-Anforderung an die angegebene URL und gibt den Konnektivitätsstatus zurück, der angibt, ob die URL erreichbar ist oder nicht.
    os.mac.check-services-data Service_type =<Typ des Service (Anwender, System oder alle) Ruft die Liste aller Services mit PID, Servicename, Status und Servicetyp ab.

    Prüfungsdefinitionen – Korrekturaktionen

    DEX stellt die folgenden Arten von Prüfungsdefinitionen für Korrekturaktionen bereit.
    Name der Prüfungsdefinition Parameter der Prüfungsdefinition Beschreibung
    os.mac.action-kill-process --pid=<Prozess-ID>

    ODER

    --process_name =<Name der ausführbaren Datei>

    Hinweis:
    Die Prozess-ID hat Priorität gegenüber dem Anwendungsnamen.
    Beendet einen laufenden Prozess oder mehrere Prozesse, die durch ihre Prozess-ID (PID) oder den Namen der ausführbaren Datei (.app) angegeben werden.
    os.mac.action-restart-service --service_name=<Servicename> Startet protokollierte Benutzerservices neu, die einen Servicenamen als Systemeingabe annehmen.
    os.mac.action-execute-JAMF-Policy --Richtlinien-ID: Policy_ID Führen Sie die Jamf-Richtlinie entweder mit einer Richtlinien-ID oder mit einer vordefinierten Aktion aus. Vordefinierte Aktionen werden von den DEX-Administratoren in der Tabelle „Dex_jamf_Policy“ festgelegt. Die Service Desk-Mitarbeiter können die vordefinierten Aktionen auswählen und ausführen, da sie möglicherweise keinen Zugriff auf Jamf-Richtlinien-IDs haben. Die Jamf-Richtlinie enthält Informationen über den Anwendungsnamen, Informationen zur Paketversion, die auszuführende Aktion (z. B. Installation oder Deinstallation), Informationen zu „aktiviert im Selfservice“, die auf dem Jamf-Server definiert sind.
    Hinweis:
    Jamf-Client muss auf dem Gerät installiert sein, um die Jamf-Richtlinie auszuführen.
    os.mac.action-Clear-App-Cache auto_CLOSE = <wahr/falsch, ob der Prozess geschlossen werden soll, bevor der Cache geleert wird>

    Process_Name = <Process name>

    App_Name = <Application name>

    Cache_path = <Pfad zum Cache-Ordner>

    Löscht den Anwendungscache.
    Hinweis:
    Cache-Pfad wird für unterstützt Zoom, Microsoft Outlook, Und Microsoft Teams. Geben Sie den Cache-Pfad ohne den Pfad zum Anwender ein. Wenn sich der Cache beispielsweise im Pfad C befindet:\Anwender\<UserName>\AppData\Roaming\Zoom\Data, geben Sie AppData\Roaming\Zoom\Data ein.