Senza andare troppo lontano dall'argomento, puoi verificare se un binario è stato firmato in preparazione per Gatekeeper usando gli strumenti di riga di comando otool
o pagestuff
che Xcode installerà come parte dei download opzionali.
Senonvuoiinstallarli,puoiancheutilizzarexcode-select
excrun
pereseguirequestistrumentidadovesitrovanoall'internodell'appXcodescaricatain/Applicazioni.
Eccoun'appchesembrafirmataeprontaperGatekeeper- MarsEdit
mac:Applications me$ xcrun otool -l /Applications/MarsEdit.app/Contents/MacOS/MarsEdit |grep LC_CODE_SIGNATURE
cmd LC_CODE_SIGNATURE
mac:Applications me$ xcrun pagestuff /Applications/MarsEdit.app/Contents/MacOS/MarsEdit -a | grep signature
File Page 241 contains data of code signature (x86_64)
File Page 242 contains data of code signature (x86_64)
File Page 243 contains data of code signature (x86_64)
File Page 423 contains data of code signature (i386)
File Page 424 contains data of code signature (i386)
File Page 425 contains data of code signature (i386)
File Page 426 contains data of code signature (i386)
Ora, questo non inizia nemmeno a dirti se la chiave è valida se confrontata con il tuo portachiavi. Ciò richiede che lo sviluppatore utilizzi una chiave firmata da Apple e che Apple abbia inviato al tuo mac la chiave di firma appropriata per verificare che la chiave sviluppatore sia "attendibile".
Poiché questo è abbastanza complicato, puoi semplicemente attivare il controllo (salva tutti i lavori critici e PER FAVORE IL BACKUP DEL MAC PRIMA DI FARLO) in 10.7.3:
-
sudo spctl --enable
# se non sai cosa è sudo devi saltare questo finché non capisci che il comando sbagliato potrebbe cancellare il tuo sistema oi tuoi file. Tutti loro, totalmente spariti.
Sembra che spctl
sia migliorato per 10.7.4 ma non l'ho esplorato più della lettura della pagina man per lo strumento. Sarà chiaramente il modo di verificare se un'app specifica è stata cancellata o meno e di abilitare / disabilitare a livello più basso le varie regole e verifiche che supporteranno il termine di marketing di Gatekeeper.
Per quanto riguarda il motivo per cui potresti controllare, sarebbe solo per la curiosità o una sorta di vantarsi se non sei effettivamente uno sviluppatore che ha bisogno di testare questo e assicurarsi che il codice venga eseguito su entrambi i sistemi operativi (Mountain Lion e Lion) .
Per la maggior parte delle persone, sapere cosa Gatekeeper è abbastanza buono. Per i curiosi - ecco una bella lista di lettura: