Inlogonderdelen en achtergrondtaken beheren op de Mac
Vóór macOS 13 waren in helper-executables scripts opgenomen waarmee een of meer eigenschappenlijsten in specifieke mappen werden geïnstalleerd op basis van het type voorziening. In macOS 13 en nieuwer zorgt een nieuwe structuur van de appbundel ervoor dat de installatie van inlogonderdelen en de bijbehorende eigenschappenlijsten is vereenvoudigd doordat helper-executables uit eerdere versies van macOS worden bijgewerkt. Dit framework wordt gebruikt om de gebruiker transparantie te bieden wanneer je inlogonderdelen, launch agents en launch daemons configureert op een Mac. Dit framework gebruikt het object SMAppService
voor de aansturing van helper-executables die zich in de hoofdbundel van een app bevinden. Het kan ook worden gebruikt voor het registreren en beheren van inlogonderdelen, launch agents en launch daemons als helper-executables voor een app; het werkt met alle typen apps, ongeacht hoe deze zijn geïnstalleerd.
Helper-apps en helper-executables implementeren
Een organisatie kan opgegeven onderdelen configureren met behulp van een nieuwe configuratiepayload. De payload 'Materiaal' bestaat uit een array van woordenboeken. Elk woordenboek definieert een regel voor een of meer potentiële onderdelen. Het eerste onderdeel dat tijdens een installatie aan een regel voldoet, zorgt ervoor dat de beheerder een melding krijgt dat er beheerde onderdelen worden geïnstalleerd. Bij alle volgende installaties van onderdelen die aan een regel voldoen, worden gedurende de rest van de dag (24 uur na de eerste melding) geen extra meldingen gegenereerd. Als onderdelen worden gedetecteerd en worden beheerd met deze configuratie, moeten beheerders en gebruikers feedback geven aan leveranciers van apps en interne ontwikkelteams om te kunnen profiteren van het nieuwe framework in een gebundelde app.
Meldingen van eindgebruikers voor apps die met deze payload worden beheerd, worden samengevat in één melding, waarin de gebruiker wordt geïnformeerd dat er beheerde onderdelen worden geïnstalleerd en dat deze kunnen worden bekeken in Systeeminstellingen. Hoewel deze melding zichtbaar blijft op het scherm, worden er geen andere meldingen voor beheerde onderdelen gegenereerd. Als deze melding wordt gesloten, ontvangt de gebruiker weer bericht als er sprake is van nieuwe beheerde installaties. Als de melding 'in de sluimerstand' wordt gezet, volgen er tot het einde van de geselecteerde periode (één week of één dag) geen meldingen meer van inlogonderdelen, launch agents of launch daemons.
Apps identificeren met beheer van achtergrondtaken
Beheerders moeten op de hoogte zijn van de onderdelen die helper-apps en helper-executables gebruiken en door de organisatie zijn geïmplementeerd. Om vast te stellen welke onderdelen worden geïmplementeerd en worden geregistreerd bij het nieuwe framework, moeten standaardworkflows voor implementatie worden getest en moet de resulterende configuratie op relevante onderdelen worden geanalyseerd. Bijvoorbeeld:
Gebruik het declaratieve statusrapport voor achtergrondtaken dat beschikbaar is in macOS 14 of nieuwer.
Ga naar 'Systeeminstellingen' > 'Algemeen' > 'Inlogonderdelen' om een lijst te zien van de onderdelen die bij het nieuwe framework zijn geregistreerd. Klik op de informatieknop om het onderdeel te zien dat wordt gestart.
Gebruik de commandoregeltools om belangrijke systeeminformatie te verzamelen, gegevens opnieuw in te stellen voor testdoeleinden en activiteiten te monitoren met de apps Console en Terminal.
sfltool dumpbtm: Hiermee kun je de huidige status van inlog- en achtergrondonderdelen weergeven, met inbegrip van geladen payload-UUID's van
servicemanagement
. De uitvoer van dit commando moet worden opgenomen in de feedback die je geeft, samen met de andere onderdelen die worden vermeld in het feedbackgedeelte.sfltool resetbtm: Hiermee worden gegevens van inlog- en achtergrondonderdelen opnieuw ingesteld. Als je dit commando gebruikt tussen tests, is het raadzaam dat gebruikers hun computer opnieuw opstarten.
Beheeractiviteiten voor inlog- en achtergrondonderdelen monitoren in Console: Filter op
subsystem:backgroundtaskmanagement
encategory:mcx
, of gebruik het volgende commando om de logbestanden te streamen naar Terminal:log stream —debug —info —predicate "subsystem = 'com.apple.backgroundtaskmanagement'and category = 'mcx'"
Met versie 4.3.0 of nieuwer van Mac Evaluation Utility (beschikbaar op AppleSeed for IT) kun je testresultaten met gedetailleerde informatie genereren, die vergelijkbaar zijn met de resultaten van
sfltool dumpbtm
. Deze tests voor inlogonderdelen, launch agents en launch daemons gebruiken de beheerfunctie voor inlog- en achtergrondonderdelen in macOS om een overzicht van de geïnstalleerde apps aan te maken. Deze testresultaten worden samen met andere tests van Mac Evaluation Utility in een overzicht weergegeven en kunnen als door komma's of tabs gescheiden tekstbestanden worden geëxporteerd voor verdere analyse.
Een XML-configuratieprofiel voor het beheer van achtergrondtaken gebruiken
Je kunt een XML-configuratieprofiel gebruiken om achtergrondtaken te beheren. Als je dit doet, worden alle onderdelen vergeleken met alle regeltypen. Wanneer een onderdeel overeenkomt met een regel, wordt het onderdeel automatisch goedgekeurd. Bij het vergelijken worden deze regeltypen gebruikt:
BundleIdentifier van app: De bundel-ID van de app die wordt gezocht. De ID moet exact overeenkomen.
BundleIdentifierPrefix van app: Het voorvoegsel van de bundel-ID van de app die wordt gezocht.
TeamIdentifier van ontwikkelaar: De team-ID van de kenmerken voor codeondertekening. De ID moet exact overeenkomen.
Label van voorziening: De waarde van de Label-parameter van de
launchd
-plist die wordt gezocht. De waarde moet exact overeenkomen.LabelPrefix van voorziening: Het voorvoegsel van de Label-parameter van de
launchd
-plist die wordt gezocht.
Zie Voorbeeld van beheer van achtergrondtaken en Instellingen voor de MDM-payload 'Beheerde inlogonderdelen' voor meer informatie.
Attributies uit andere apps
Apple onderhoudt een voorkeurenbestand met de naam attributions.plist
met daarin een groot aantal helper-apps of helper-executables die vaak door een bepaalde app worden gebruikt. Aan de hand van de gegevens in dit bestand kun je helper-apps en uitvoerbare bestanden identificeren die bij het opstarten aanwezig zijn in de inlogonderdelen van een gebruiker. Bekijk het volgende bestand voor een compleet overzicht van deze gangbare onderdelen en hun attributies:
/Systeem/Bibliotheek/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/Resources/