Utilizarea MDM pentru aplicarea actualizărilor software la dispozitivele Apple
Gestionarea declarativă a dispozitivelor este viitorul gestionării dispozitivelor Apple. Aceasta permite ca dispozitivul să aplice în mod asincron configurările și să raporteze starea la soluția de gestionare a dispozitivelor mobile (MDM) fără o interogare constantă. Acest lucru este ideal pentru performanță și scalabilitate și facilitează, de asemenea, o abordare modernă a gestionării actualizărilor software. Gestionarea declarativă furnizează o raportare proactivă a stării dispozitivelor, pe măsură ce se modifică valorile și configurațiile. Astfel, soluția MDM are întotdeauna o viziune actualizată asupra dispozitivelor, fără a fi necesar să trimită interogări regulate.
În loc să trimită către un dispozitiv comanda de actualizare software pentru ca acesta să inițieze actualizarea, soluția MDM declară starea versiunii sistemului de operare dorit și deleagă sarcina de realizare a stării respective dispozitivului efectiv. Acest lucru permite un proces mai robust de actualizare software gestionată și o transparență mai mare pentru utilizator.
Importanța exploatării declarațiilor de actualizare software
Soluțiile MDM ar trebui să exploateze, ori de câte ori este posibil, declarațiile de actualizare software. Cu toate acestea, comenzile și profilurile vechi de actualizare software sunt disponibile și compatibile în continuare. Acestea pot funcționa împreună cu declarațiile de actualizare software, cu următoarele modificări:
Amânările definite de o declarație au prioritate în fața amânărilor configurate de o restricție.
Configurările de actualizare software automată pe macOS aplicate de o declarație au prioritate în fața configurărilor de actualizare automată furnizate într-un profil de configurare.
Când există o actualizare software în așteptare configurată utilizându-se gestionarea declarativă a dispozitivelor, unele comenzi MDM nu mai sunt procesate de client, returnând erori care comunică faptul că există o declarație activă pe dispozitiv, după cum se arată în tabelul următor:
Comandă MDM | Rezultat | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| Limitat: În macOS, actualizările bazate pe sistemul de operare care nu sunt gestionate ar putea apărea în răspunsul la comandă; de exemplu, în Xcode sau instrumente în linie de comandă. | ||||||||||
| Dispozitivul returnează o eroare | ||||||||||
| Acest dispozitiv returnează o matrice de stare goală. |
Utilizarea Serviciului Apple de căutare software
Serviciul Apple de căutare software (disponibil la https://gdmf.apple.com/v2/pmv) este resursa oficială pentru obținerea unei liste de actualizări, upgrade‑uri și răspunsuri rapide de securitate disponibile public. Acesta permite unei soluții MDM să interogheze versiunile noi de îndată ce sunt publicate și să calculeze aplicabilitatea pentru fiecare model hardware în timp util și precis.
Răspunsul JSON conține trei liste de lansări software disponibile:
PublicAssetSets: Această listă conține cele mai recente versiuni disponibile pentru publicul general dacă acesta încearcă să efectueze o actualizare sau un upgrade.
AssetSets: Această listă este un subset al PublicAssetSets și conține toate versiunile disponibile pentru a fi trimise de către soluțiile MDM pe dispozitivele supervizate.
PublicRapidSecurityResponses: Această listă conține lansările de tip răspuns rapid de securitate disponibile în prezent pentru dispozitivele Apple.
Fiecare element din listă conține numărul de versiune (ProductVersion
) și de compilare (Build
) al sistemului de operare, data publicării versiunii (PostingDate
), data expirării (ExpirationDate
) și o listă de dispozitive compatibile (SupportedDevices
) cu versiunea respectivă. Lista dispozitivelor realizează corespondența valorii ProductName
de pe dispozitiv, care se returnează într‑un răspuns DeviceInformation
, în solicitarea inițială Authenticate
sau în MachineInfo
când dispozitivul încearcă să se înscrie.
Data expirării, configurată în mod normal la 180 de zile de la data postării, definește data la care expiră semnarea actualizării. O actualizare expirată nu mai poate fi instalată pe dispozitive. Când sunt disponibile actualizări ulterioare, datele de expirare ale actualizărilor anterioare ar putea fi actualizate. Dacă nu se menționează o dată de expirare, actualizarea nu a expirat. O actualizare a expirat doar atunci când data sa de expirare este în trecut.
Materialele sunt grupate în funcție de platforma sistemului de operare folosind cheile următoare:
iOS
(care include iPadOS, tvOS și watchOS)macOS
xrOS
(adică visionOS)
{
"AssetSets": {
"iOS": [
{
"ProductVersion": "17.5",
"Build": "21F6079",
"PostingDate": "2024-05-13",
"ExpirationDate": "2024-08-15",
"SupportedDevices": ["iPad11,1", "iPad11,2", "iPad11,3", "iPad11,4", "iPad11,6", "iPad11,7", "iPad12,1", "iPad12,2", "iPad13,1","iPad13,10", "iPad13,11", "iPad13,16", "iPad13,17", “iPad13,18", "iPad13,19", "iPad13,2", "iPad13,4", “iPad13,5", "iPad13,6", "iPad13,7", "iPad13,8", "iPad13,9", "iPad14,1", "iPad14,2", "iPad14,3", "iPad14,4", "iPad14,5", "iPad14,6", "iPad6,11", "iPad6,12", "iPad6,3", "iPad6,4", "iPad6,7", "iPad6,8", "iPad7,1", "iPad7,11", "iPad7,12", "iPad7,2", "iPad7,3", "iPad7,4", "iPad7,5", "iPad7,6", "iPad8,1", "iPad8,10", "iPad8,11", "iPad8,12", "iPad8,2", "iPad8,3", "iPad8,4", "iPad8,5", "iPad8,6", "iPad8,7", "iPad8,8", "iPad8,9", "iPhone10,1", "iPhone10,2", "iPhone10,3", "iPhone10,4", "iPhone10,5", "iPhone10,6", "iPhone11,2", "iPhone11,6", "iPhone11,8", "iPhone12,1", "iPhone12,3", "iPhone12,5", "iPhone12,8", "iPhone13,1", "iPhone13,2", "iPhone13,3", "iPhone13,4", "iPhone14,2", "iPhone14,3", "iPhone14,4", "iPhone14,5", "iPhone14,6", "iPhone14,7", "iPhone14,8", "iPhone15,2", "iPhone15,3"
]
},
Utilizați lista versiunilor de produs pentru a determina ce versiuni sunt mai mari decât versiunea actuală a sistemului de operare al dispozitivului și sunt aplicabile unui dispozitiv anume. Furnizați administratorului MDM lista versiunilor drept potențiali candidați pentru actualizări ale sistemului de operare.
Trimiterea unui raport de stare către soluția MDM
Pentru a primi actualizări despre articolele de stare pe măsură ce acestea se modifică, serverul trebuie să se aboneze la fiecare raport de stare trimițând către dispozitiv o declarație ManagementStatusSubscriptions
. Dispozitivul trimite apoi un StatusReport
către soluția MDM când o declarație ManagementStatusSubscriptions
devine activă, dacă s-a modificat starea unui articol la care s-a abonat și la fiecare 24 de ore.
În scopul monitorizării versiunilor sistemului de operare și a stării actualizării software, soluția MDM poate alege să se aboneze la următoarele rapoarte de stare:
Raport de stare | Descriere |
---|---|
| Versiunea build a sistemului de operare pe dispozitiv (de exemplu, 21E219). |
| Versiunea sistemului de operare în uz pe dispozitiv (de exemplu, 17.4). |
| Versiunile build ale sistemului de operare și răspunsului rapid de securitate în uz pe dispozitiv (de exemplu, 20A123a sau 20F75c). |
| Versiunea răspunsului rapid de securitate al sistemului de operare în uz pe dispozitiv (de exemplu, a). |
| Un dicționar care conține versiunile build și ale sistemului de operare ale actualizării software care este în așteptare pe dispozitiv. |
| Starea instalării actualizării software, care are următoarele valori:
|
| Un dicționar cu detalii despre motivul pentru care o actualizare software este în așteptare. Cheia
|
| Detalii despre eșecul actualizării software. Aceste detalii includ: de câte ori a eșuat actualizarea software, marcajul temporal al ultimului eșec și motivul pentru care procesul a eșuat. |
| Numele programul beta în care este înregistrat dispozitivul sau un șir gol dacă nu este înregistrat în niciun program beta. |
Pe lângă alte rapoarte, soluțiile MDM ar putea alege să pună softwareupdate.install-reason
la dispoziția administratorilor pentru asistență și pentru a furniza o imagine suplimentară despre cum a fost declanșată o actualizare. Acest dicționar poate fi utilizat pentru a se determina dacă un utilizator a inițiat singur actualizarea, dacă actualizarea s-a efectuat automat sau dacă a fost impusă de o declarație de impunere a actualizării software.
Impunerea unei versiuni minime specifice de software în timpul înregistrării MDM
Dacă un dispozitiv este compatibil cu această capacitate, acesta returnează o cheie MDM_CAN_REQUEST_SOFTWARE_UPDATE, configurată la True, în datele MachineInfo
pe care le trimite în solicitarea HTTP POST inițială către soluția MDM atunci când dispozitivul detectează o configurație de gestionare în Asistent configurare. Pentru informații suplimentare, consultați Fișierul MachineInfo yaml în Depozitul GitHub pentru gestionarea dispozitivelor Apple.
În plus, dispozitivele furnizează următoarele câmpuri în datele MachineInfo
(toate șirurile) :
Cheie | Sistemul minim de operare acceptat | Descriere | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
VERSION | iOS 17 iPadOS 17 macOS 14 | Versiunea build instalată pe dispozitiv (de exemplu, 7A182). | |||||||||
OS_VERSION | iOS 17 iPadOS 17 macOS 14 | Versiunea sistemului de operare instalată pe dispozitiv (de exemplu, 17.0). | |||||||||
SUPPLEMENTAL_BUILD_VERSION | iOS 17 iPadOS 17 macOS 14 | Versiunea răspunsului rapid de securitate pe dispozitiv (dacă este disponibilă). | |||||||||
SUPPLEMENTAL_OS_VERSION_EXTRA | iOS 17 iPadOS 17 macOS 14 | Versiunea extra a răspunsului rapid de securitate pe dispozitiv (dacă este disponibilă). | |||||||||
SOFTWARE_UPDATE_DEVICE_ID | iOS 17.4 iPadOS 17.4 macOS 14.4 | Identificatorul modelului dispozitivului utilizat pentru căutarea actualizărilor disponibile pentru sistemul de operare în Serviciul Apple de căutare software. |
Pe baza informațiilor furnizate, soluția MDM poate decide dacă impune sau nu actualizarea dispozitivului.
Dacă o soluție MDM alege să nu impună o actualizare software, aceasta returnează pur și simplu profilul de înregistrare MDM ca răspuns la solicitarea HTTP POST, așa cum ar proceda în mod normal pentru a permite continuarea unei înregistrări MDM.
Dacă soluția MDM alege să impună o actualizare software, aceasta trebuie să returneze un răspuns HTTP cu codul de stare 403 și să includă un obiect JSON sau XML în corpul de răspuns (antetul de răspuns HTTP Content-Type trebuie să fie configurat la
application/json
sau, respectiv,application/xml
).
După primirea acestui răspuns de eroare, dispozitivul încearcă să efectueze actualizarea la versiunea specificată. Dacă actualizarea se realizează cu succes, dispozitivul repornește și utilizatorul trebuie să treacă din nou prin Asistent configurare. Următoarea solicitare MachineInfo
POST din partea dispozitivului către soluția MDM afișează versiunea actualizată a sistemului de operare, iar soluția MDM poate continua apoi cu înregistrarea MDM. Dacă actualizarea eșuează, este afișată o eroare pentru utilizator și panoul Gestionare de la distanță apare din nou în Asistent configurare.
Schema de răspuns
este definită în tabelul de mai jos.
Cheie | Tip | Obligatoriu | Descriere | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| Șir | Da | Trebuie configurat la | ||||||||
| Șir | Nu | Descrierea erorii. Utilizată doar pentru înregistrarea în jurnal. | ||||||||
| Șir | Nu | Descrierea erorii potrivită pentru a fi afișată utilizatorului. | ||||||||
| Dicționar | Da | Date suplimentare care specifică actualizarea software. |
Schema dicționarului detalii
este definită aici.
Cheie | Tip | Obligatoriu | Descriere | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
| Șir | Da | Versiunea a sistemului de operare la care dispozitivul trebuie să se actualizeze. | ||||||||
| Șir | Nu | Versiunea build la care dispozitivul trebuie să se actualizeze. | ||||||||
| Dicționar | Nu | Dispozitivul este înregistrat în programul beta, permițând actualizări software impuse la versiuni ale sistemului de operare al programului beta. Dispozitivul rămâne în programul beta după finalizarea actualizării software impuse. |
Dacă se specifică doar OSVersion
, dispozitivul descarcă și instalează automat orice răspuns rapid de securitate disponibil pentru această versiune. Dacă este necesar un anumit build sau o versiune suplimentară, o soluție MDM poate, de asemenea, specifica opțional BuildVersion
. De exemplu, pentru a impune ca un dispozitiv să ruleze iOS 16.5.1(a) înainte de înregistrare (deși este deja disponibilă și versiunea iOS 16.5.1(c)), o soluție MDM trebuie să configureze OSVersion
la iOS 16.5.1 și BuildVersion
la 20F770750b.
Important: anterior versiunii macOS 15, doar versiunile din listele PublicAssetSets
și PublicRapidSecurityResponses
pot fi specificate. În macOS 15, materialele din AssetSets
pot fi, de asemenea, utilizate.
Configurările MDM pentru actualizările software
Declarația com.apple.configuration.softwareupdate.settings
(disponibilă în iOS 18, iPadOS 18 și macOS 15) constă în dicționarele care pot fi utilizate pentru a configura diferite aspecte ale comportamentului de actualizare software.
După ce soluția MDM distribuie diferite chei între mai multe declarații, un dispozitiv comasează configurările tuturor declarațiilor configurărilor actualizărilor software active. În cazul în care aceeași cheie este configurată de mai multe declarații, comportamentul de comasare depinde de cheia individuală și este evidențiat în tabelele de mai jos.
Configurarea actualizărilor software automate cu MDM
Declarația com.apple.configuration.softwareupdate.settings
oferă un dicționar pentru definirea comportamentului de actualizare software automată pe dispozitivele iPhone, iPad și Mac supervizate. Pentru mai multe informații, consultați Cheile dicționarului AutomaticActions.
Modul în care soluția MDM gestionează răspunsurile rapide de securitate
Răspunsurile rapide de securitate aplică întotdeauna cea mai recentă actualizare a sistemului de operare, care devine versiunea de bază a răspunsului rapid de securitate. De exemplu, dacă un iPhone are instalată versiunea sistemului de operare iOS 17.2, acesta aplică actualizarea suplimentară 17.2 (a) dacă este disponibilă. În iOS 18, iPadOS 18 și macOS 15, au devenit disponibile actualizările combinate, care permit ca o actualizare software să includă toate răspunsurile rapide de securitate disponibile.
Anterior versiunilor iOS 18, iPadOS 18 și macOS 15, o soluție MDM ar putea necesita să declanșeze două actualizări software pentru a se asigura că versiunea suplimentară specifică este prezentă: mai întâi, trebuie să actualizeze dispozitivul la versiunea de bază a actualizării suplimentare, dacă pe dispozitiv nu este deja versiunea de bază respectivă (de exemplu, de la iOS 17.1 la iOS 17.2); apoi, trebuie să actualizeze versiunea de bază la versiunea suplimentară (de exemplu, de la iOS 17.2 la iOS 17.2 (a)).
În iOS 18, iPadOS 18 și macOS 15, o soluție MDM poate specifica una dintre următoarele:
Versiunea sistemului de operare (care instalează automat răspunsurile rapide de securitate disponibile)
Versiunea build suplimentară (care determină ca dispozitivul să efectueze automat o actualizare necesară la versiunea de bază ca parte a acestui proces)
Aceste două abordări se aplică la configurația de impunere a actualizării software și la versiunea minimă impusă în timpul Înregistrării automate a dispozitivului.
Declarația com.apple.configuration.softwareupdate.settings
poate fi, de asemenea, utilizată pentru a configura comportamentul răspunsului rapid de securitate pe dispozitivele iPhone, iPad și Mac supervizate. Pentru mai multe informații, consultați Cheile dicționarului RapidSecurityResponse pentru iOS, iPadOS și macOS.
Amânarea unei actualizări software cu MDM
Amânarea unei actualizări sau unui upgrade software cu 1 până la 90 de zile se realizează utilizându‑se declarația com.apple.configuration.softwareupdate.settings
pe dispozitivele iPhone, iPad și Mac supervizate.
O amânare configurată definește timp de câte zile o versiune nu este oferită utilizatorilor după ce aceasta devine disponibilă public. Independent de amânarea configurată, o soluție MDM poate impune în continuare o anumită actualizare software, un upgrade sau un răspuns rapid de securitate pe dispozitivele gestionate. Pentru informații suplimentare, consultați Cheile dicționarului Amânări pentru iOS și iPadOS și Cheile dicționarului Amânări pentru macOS.
Notă: amânarea actualizărilor software duce și la amânarea tuturor răspunsurilor rapide de securitate care sunt dependente de respectiva versiune.
Impunerea actualizărilor software cu MDM
Pentru a impune o actualizare software cu o anumită perioadă de timp pe dispozitivele înregistrare utilizându-se Înregistrarea dispozitivului sau Înregistrarea automată a dispozitivului, soluțiile MDM pot aplica declarația com.apple.configuration.softwareupdate.enforcement.specific
.
Dacă o configurație specifică o versiune a sistemului de operare sau de build care este aceeași sau mai veche decât versiunea curentă de pe dispozitiv, configurația este ignorată.
Dacă sunt prezente mai multe configurații cu o versiune mai nouă a sistemului de operare sau de build față de versiunea curentă de pe dispozitiv, este procesată mai întâi configurația cu cea mai recentă dată și oră țintă și toate celelalte rămân în coada de așteptare. Când dispozitivul se actualizează la o versiune nouă, setul de configurații este reprocesat pentru a se determina care va fi următoarea versiune de procesat.
Toate răspunsurile rapide de securitate disponibile sunt instalate automat dacă o soluție MDM definește doar TargetOSVersion
. Pentru a ținti o anumită versiune sau un anumit răspuns rapid de securitate, o soluție MDM poate utiliza cheia TargetBuildVersion
pe lângă specificarea build‑ului, inclusiv identificatorului suplimentar al versiunii.
Pentru informații suplimentare, consultați Cheile dicționarului Impunerea actualizărilor software.
Notificări
Cheia Notificări schimbă comportamentul implicit al notificărilor, pentru a afișa doar o notificare cu 1 oră înainte de momentul impunerii și numărătoarea inversă pentru repornire. Pentru mai multe informații, consultați Cheile Notificări.
Utilizarea tokenului de amorsare pentru computere Mac cu cip Apple
Petru a autoriza o actualizare software impusă pe un computer supervizat Mac cu cip Apple, o soluție MDM poate solicita și plasa în custodie un token de amorsare. Acest lucru permite o experiență de actualizare software complet fără întreruperi și evită necesitatea ca utilizatorul să interacționeze ca parte din proces. La nevoie, dispozitivul utilizează o solicitare GetBootstrapTokenRequest
pentru a prelua tokenul de amorsare de la soluția MDM.
La primul pas, soluția MDM determină dacă dispozitivul este compatibil cu tokenul de amorsare utilizând comanda SecurityInfo
. Dacă răspunsul include un BootstrapTokenRequiredForSoftwareUpdate
care este configurat la True, dispozitivul poate utiliza tokenul de amorsare a autoriza o actualizare software.
Pentru a crea un token de amorsare, soluția MDM trebuie să adauge com.apple.mdm.bootstraptoken
la matricea ServerCapabilities
în profilul MDM. Pentru mai multe informații, consultați Sarcina MDM pe site-ul web al dezvoltatorilor Apple.
După ce dispozitivul primește tokenul de amorsare, acesta creează un token de amorsare data viitoare când se autentifică un utilizator cu token securizat activat. Acesta comunică apoi cu punctul final de verificare a soluției MDM solution și plasează în custodie tokenul utilizând o solicitare SetBootstrapTokenRequest
. Pentru mai multe informații, consultați Configurarea tokenului de amorsare pe site-ul web al dezvoltatorilor Apple.
Pentru cele mai actuale specificații ale schemei, consultați Depozitul GitHub pentru gestionarea dispozitivelor Apple.