2013-02-06 13 views
10

Sto lavorando a un'applicazione in Mac OS X Mountain Lion che deve accedere alla chiave privata di alcuni dei miei certificati all'interno dell'accesso Portachiavi. Dal momento che questa applicazione è andare a correre su un server, ho bisogno di evitare la finestra di pop-up che richiede all'utente di consentire all'applicazione di accedere alla chiave privata:Firma codice Mac: ignora il prompt chiave privata Accesso Portachiavi dal Terminal

Pop up dialog

So che facendo clic su "Consenti sempre "la finestra di dialogo non verrà più visualizzata per quella chiave privata, il problema è che lavorerò con chiavi diverse.

Grazie in anticipo,

Mikywan.

+0

Per El Capitan, è necessaria la risposta da http://stackoverflow.com/a/33650464/1285846 –

risposta

11

L'unico modo per risolvere questo problema è impostare la chiave privata nell'accesso Portachiavi a "Consenti a tutte le applicazioni di accedere a questo elemento".

Private Key Properties: Access Control

È possibile configurare questa dal Terminal quando si importa il certificato nel vostro portachiavi.

comando Import: import inputfile [-k keychain] [-t type] [-f format] [-w] [-P passphrase] [options...]

Per impostare il controllo di accesso a "Tutte le applicazioni possono accedere a questo oggetto", basta aggiungere il flag "-A".

È possibile controllare sempre Apple's manual on security

Spero che questo aiuti.

+1

È inoltre possibile specificare singole applicazioni che possono utilizzare la chiave anziché tutte le applicazioni utilizzando il flag -T su ' importazione di sicurezza ». Ad esempio: sicurezza import my_input_file -T/usr/bin/codesign. È possibile utilizzare più flag -T per specificare più programmi. Questa informazione può anche essere trovata sul manuale Apple sulla sicurezza, collegato nella risposta. – Mark

+2

Su un nuovo server El Capitan che ho appena configurato; Sono stato in grado di concedere l'accesso solo reimportando utilizzando lo strumento da riga di comando e aggiungendo l'opzione -A. – Fiid