Verwalten von Anmeldeobjekten und Hintergrundaufgaben auf dem Mac
Vor macOS 13 enthielt ein Teil des App-Design-Prozesses der ausführbaren Hilfsprogramme Skripte, die basierend auf dem Diensttyp eine oder mehrere Eigenschaftslisten in bestimmten Verzeichnissen installierten. In macOS 13 (oder neuer) vereinfacht ein neue Struktur im App-Paket die Installation von Anmeldeobjekten und den zugehörigen Eigenschaftslisten durch Aktualisieren der ausführbaren Hilfsprogramme von früheren macOS-Versionen. Dieses Framework wird verwendet, um beim Konfigurieren von Anmeldeobjekten, Launch-Agenten und Launch-Daemons auf einem Mac Transparenz gegenüber dem Benutzer zu schaffen. Das Framework verwendet das Objekt SMAppService
, um ausführbare Hilfsprogramme zu steuern, die sich in einem Hauptpaket der App befinden. Es kann auch zum Registrieren und Steuern von Anmeldeobjekten, Launch-Agenten und Launch-Daemons als ausführbare Hilfsprogramme für Apps verwendet werden. Darüber hinaus funktioniert das Framework mit allen App-Typen, und zwar unabhängig davon, wie sie installiert wurden.
Hilfs-Apps und ausführbare Hilfsprogramme implementieren
Organisationen haben die Möglichkeit, mit einer neuen Konfigurations-Payload bestimmte Objekte zu konfigurieren. Die Payload „Inhalt“ ist ein Array mit Verzeichnissen und jedes davon legt eine Regel für ein oder mehrere potentielle Objekte fest. Das erste Objekt, das während der Installation mit einer Regel übereinstimmt, benachrichtigt den Administrator, dass verwaltete Objekte installiert werden. Jede darauffolgende Installation von Objekten, die einer Regel entsprechen, erzeugen keine weitere Mitteilungen für den Rest des Tages (24 Stunden nach der ersten Mitteilung). Wenn Objekte mit dieser Konfiguration entdeckt und verwaltet werden, sollten Administratoren und Benutzer den App-Anbietern und internen Tool-Teams Feedback geben, um die Vorteile des neuen Frameworks in einem App-Paket zu nutzen.
Endbenutzer-Mitteilungen für Apps, die innerhalb dieser Payload verwaltet werden, werden mit einer einzelnen Mitteilung verarbeitet, die den Benutzer wissen lässt, dass verwaltete Objekte installiert und in den Systemeinstellungen angezeigt werden können. Während diese Mitteilung auf dem Bildschirm angezeigt wird, erscheinen keine weiteren Mitteilungen für verwaltete Objekte. Wenn diese Mitteilung geschlossen wird, werden Benutzer wieder über darauffolgende verwaltete Installationen benachrichtigt. Wenn für die Mitteilung „Erinnern“ ausgewählt wird, werden keine weiteren Mitteilungen mehr von Anmeldeobjekten, Launch-Agenten oder Launch-Daemons für die ausgewählte Dauer angezeigt – 1 Stunde oder 1 Tag.
Mit der Verwaltung von Hintergrundaktionen Apps identifizieren
Administratoren sollten auf alle Objekte achten, die von ihrer Organisation implementierte Hilfs-Apps und ausführbare Hilfsprogramme verwenden. Um zu identifizieren, welche Objekte mit dem neuen Framework implementiert und registriert werden, sollten Arbeitsabläufe für Standardimplementierungen getestet und die daraus resultierende Konfiguration für die entsprechenden Objekte analysiert werden. Zum Beispiel:
Verwende den deklarativen Statusbericht für Hintergrundaktionen, die in macOS 14 (oder neuer) verfügbar sind.
Öffne „Systemeinstellungen“ > „Allgemein“ > „Anmeldeobjekte“, um eine Liste der Objekte anzuzeigen, die mit dem neuen Framework registriert wurden. Klicke zum Anzeigen des gestarteten Objekts auf die Informationstaste.
Verwende die Befehlszeilenprogramme „Konsole“ und „Terminal“, um wichtige Systeminformationen zu sammeln, Daten für Testzwecke zurückzusetzen und Aktivitäten zu überwachen.
sfltool dumpbtm: Gibt den aktuellen Status von Anmelde- und Hintergrundobjekten aus, einschließlich geladener
servicemanagement
-Payload-UUIDs. Die Ausgabe dieses Befehls sollte zusammen mit den anderen Objekten, die im Abschnitt „Feedback senden“ aufgeführt sind, bei jedem von dir eingereichtem Feedback enthalten sein.sfltool resetbtm: Setzt die Daten der Anmelde- und Hintergrundobjekte zurück. Bei Verwendung dieses Befehls zwischen Tests wird empfohlen, dass auch Benutzer einen Neustart ihres Computers durchführen.
Verwaltungsaktivität von Anmelde- und Hintergrundobjekten in der Konsole überwachen: Filtere nach
subsystem:backgroundtaskmanagement
undcategory:mcx
oder verwende den folgenden Befehl, um die Protokolle im Terminal auszugeben:log stream —debug —info —predicate "subsystem = 'com.apple.backgroundtaskmanagement'and category = 'mcx'"
Das Mac-Evaluierungsdienstprogramm Version 4.3.0 (oder neuer), das bei AppleSeed for IT verfügbar ist, kann Testergebnisse generieren, die detaillierte Informationen bereitstellen – ähnlich wie
sfltool dumpbtm
. Diese Tests für Anmeldeobjekte, Launch-Agenten und Launch-Daemons melden aktuell installierte Apps, die die Verwaltung von Anmelde- und Hintergrundobjekten in macOS nutzen. Diese Testergebnisse werden eingebunden in andere Tests des Mac-Evaluierungsdienstprogramms formatiert und können als Textdateien mit Trennzeichen zur weiteren Analyse exportiert werden.
XML-Konfigurationsprofil für die Verwaltung von Hintergrundaufgaben verwenden
Du kannst ein XML-Konfigurationsprofil verwenden, um Hintergrundaufgaben zu verwalten. Geschieht dies, werden alle Objekte mit allen Regeltypen verglichen. Wenn ein Objekt mit einer Regel übereinstimmt, wird das Objekt automatisch zugelassen. Dies sind die Regeltypen, die beim Abgleich verwendet werden.
Application BundleIdentifier: Die Paket-ID der abzugleichenden App, die exakt übereinstimmen muss.
Application BundleIdentifierPrefix: Das Präfix der Paket-ID der abzugleichenden App.
Developer TeamIdentifier: Die Team-ID der Codesignatur-Attribute, die exakt übereinstimmen muss.
Service Label: Der Wert des abzugleichenden
launchd
-plist-Label-Parameters, der exakt übereinstimmen muss.Service LabelPrefix: Das Präfix des abzugleichenden
launchd
-plist-Label-Parameters.
Weitere Informationen findest du unter Beispiel für die Verwaltung von Hintergrundvorgängen und Einstellungen für die MDM-Payload „Verwaltete Anmeldeobjekte“.
Attribute von anderen Programmen
Apple verwaltet eine Datei mit Einstellungen namens attributions.plist
, die viele Hilfs-Apps oder ausführbare Hilfsprogramme von Programmen enthält, die häufig von einem bestimmten Programm verwendet werden. Diese Informationen können verwendet werden, um Hilfs-Apps und ausführbare Hilfsprogrammdateien zu identifizieren, die beim Starten in den Anmeldeobjekten von Benutzern erscheinen. Eine vollständige Referenz dieser gängigen Objekte und ihrer Attribute findest du in der Datei im folgenden Verzeichnis:
/System/Library/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/Resources/