[RISOLTO] Gestione dei criteri di Firefox/Thunderbird su macOS

Domande sul packaging WAPT / Richieste e assistenza sui pacchetti Wapt.
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
Risposta
bastien30
Messaggi: 38
Registrazione: 8 marzo 2024 - 15:21

28 ottobre 2024 - 18:12

Buongiorno,

Come richiesto sul canale Discord, ecco le mie osservazioni in seguito ai miei recenti test con Thunderbird/Firefox e le loro policy su MacOS.

Quando uno di questi programmi software viene aggiornato, tutto il contenuto della directory .app in /Applications viene eliminato dalla funzione install_app() che copia quindi la cartella .app della nuova versione, quindi vengono eliminati la cartella di distribuzione e il file policies.json (utilizziamo anche autoconfig/MCD per configurare LDAP o aggiungere identificatori su nuovi profili, e anche questo viene perso).

Ho quindi recuperato/rinominato/modificato i pacchetti Firefox/Thunderbird nel nostro repository per riapplicare l'audit di tutti questi pacchetti dopo l'installazione, il che ha l'effetto di riapplicare le modifiche direttamente, senza attendere il prossimo audit (la funzione audit() che chiama la funzione install() in caso di file mancante).

L'altra soluzione, se si utilizzano solo policy, è quella di utilizzare un file .plist (https://github.com/mozilla/policy-templ... master/mac / https://github.com/thunderbird/policy-t...entral/mac) che non verrà rimosso dall'aggiornamento.

Ciò comporta la gestione di due file separati o la conversione del file .json in .plist all'interno del pacchetto (eventualmente utilizzando il comando plutil). https://gist.github.com/sugarmo/5334805 (ma non l'ho testato).

Ciò significa anche dover eseguire il seguente comando (qui per Firefox, ma lo stesso vale per Thunderbird, vedere i link precedenti):

Codice: Seleziona tutto

run("sudo defaults write /Library/Preferences/org.mozilla.firefox EnterprisePoliciesEnabled -bool TRUE")


Un altro problema riscontrato, che stranamente si verifica solo su Thunderbird: durante una prima installazione e/o dopo un aggiornamento, al primo avvio del programma, il Mac controlla la firma dell'applicazione.

Se la firma non è valida, viene visualizzato un messaggio che indica che l'applicazione è danneggiata e si rifiuta di avviarla (richiede di forzare l'autorizzazione tramite Preferenze di Sistema/Privacy e Sicurezza, il che è un po' fastidioso, soprattutto con ogni aggiornamento). Tuttavia, la firma non è più valida dopo aver copiato un file (in genere il file policies.json) in /Applications/Thunderbird/Contents/Resources/
La firma può essere verificata utilizzando il seguente comando:

Codice: Seleziona tutto

codesign --verify --verbose /Applications/Thunderbird.app
Se avvii il programma una volta e poi installi il pacchetto policy, non ci sono problemi (tuttavia, devi concedere a wapt-get i diritti di accesso completo al disco se vuoi eseguire l'azione dalla console wapt, e lo stesso vale per il terminale se vuoi eseguire l'installazione tramite la riga di comando), ma devi farlo ogni volta che aggiorni il pacchetto...

L'unica soluzione che ho trovato per evitare questo problema è stata quella di firmare nuovamente il pacchetto dopo aver aggiunto i file di policy, utilizzando il seguente comando:

Codice: Seleziona tutto

codesign -f -s - /Applications/Contents/MacOS/thunderbird
Distribuire applicazioni su macOS non è affatto semplice, soprattutto se si vuole fare qualcosa di diverso dalla semplice installazione di un file dmg/pkg... 😮‍💨
Se può far risparmiare ad altri ore sprecate su questo... 😅
Risposta