Domanda

Abbiamo un gran numero di Mac Mini che eseguono un pezzo di software che abbiamo sviluppato e sono stati distribuiti ai vari clienti.

Recentemente abbiamo aggiornato il nostro certificato di firma del codice di quello vecchio era scaduto. Tuttavia, quando abbiamo messo una nuova versione dell'applicazione che è firmato con il nuovo certificato su una di queste macchine, si apre chiedendo di 'Consenti una volta', 'Consenti sempre' etc.

Dal momento che abbiamo per aggiornare in remoto queste macchine, non è pratico di fare clic su 'Consenti sempre' e digitare la password su tutte queste macchine. C'è un modo riga di comando per rendere il nuovo certificato riconosciuto in modo che se una macchina viene aggiornato con una versione contenente il nuovo certificato, verrà eseguito subito?

È stato utile?

Soluzione 2

Si è rivelata non è stato un problema con il certificato dopo tutto, era che la firma applicazione utilizzata dai controlli dei genitori è cambiato quando il certificato è cambiato. Questo è stato risolto modificando manualmente il file di controllo genitori per contenere la nuova firma.

Altri suggerimenti

Copiare il certificato al client (in formato PEM DER o), quindi eseguire:

sudo security add-trusted-cert -d /path/to/certificate

Almeno, che lavora per i certificati SSL; Non ho provato per la firma del codice. Potrebbe essere necessario aggiungere -p codeSign o qualcosa di simile. Inoltre, questo stabilisce un criterio di attendibilità per il certificato, ma in realtà non inserirlo al portachiavi di sistema. Se si vuole che appaia anche lì, è inoltre necessario eseguire:

sudo security add-certificate -k /Library/Keychains/System.keychain /path/to/certificate
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a apple.stackexchange
scroll top