Domanda

Con la nuova versione di OS X 10.8, il gatekeeper popupà il seguente avviso, quando si tenta di avviare un'applet Java firmato:

Inserisci Descrizione dell'immagine qui

L'applet è stata firmata con un certificato di firma del codice valido e funzionerà correttamente su altre piattaforme e le versioni precedenti di OS X. Se cambio "Consenti alle applicazioni scaricate da:" A "Anywhere", funziona correttamente. .

Per quanto posso capire "La firma digitale non può essere verificata", in realtà significa qualcosa come "La firma non è stata effettuata con un ID per sviluppatori Mac".

Allora: Posso firmare le applet Java con un ID sviluppatore Mac?Posso firmarlo con un ID sviluppatore Mac e un certificato di firma del codice standard?C'è un approccio migliore?

È stato utile?

Soluzione

Ecco la risposta che ho ricevuto dal supporto tecnico dello sviluppatore Apple:

.

Grazie per la tua pazienza mentre abbiamo studiato questo.

L'avviso è presentato da Java, non da Gatekeeper. Tuttavia, tu sei Correggere che la logica di verifica è stata cambiata su OS X Mountain Lion.

Per un po 'ora, gli utenti sono stati presentati con questo avviso quando Esecuzione di un'applet firmata, perché le applet firmate possono sfuggire alla Java Sandbox e apportare modifiche impreviste al sistema dell'utente. Gli utenti hanno L'opzione per controllare la casella "Consenti tutte le applet da" se Si fidano dello sviluppatore e quindi non vedranno di nuovo l'avviso A meno che non rimuovano l'oggetto dalle preferenze di sicurezza Java.

Cosa è cambiato in Mountain Lion è che l'avviso di verifica ora fondamentalmente significa che la firma dell'applet è valida, ma l'applet è da uno sviluppatore non identificato e sta cercando di intensificare i privilegi Quando il gatekeeper è abilitato e l'utente deve decidere se consentire quello.

"Sviluppatore non identificato" indica una fonte diversa dall'app store Mac o uno sviluppatore identificato ID sviluppatore. Si noti che le applet Java non possono partecipare al programma ID sviluppatore.

Se Gatekeeper è impostato per fidarsi solo delle app Mac App Store, allora lo farai non essere in grado di aggiungere l'applet alla lista attendibile a meno che non aggiungi il Certificato di Applet al portachiavi usando il foglio visualizzato Dopo aver fatto clic su Mostra dettagli.

App le applet non firmate non è permesso sfuggire alla sandbox Java affatto.

Questo è coerente con il trattamento dei gatekeeper delle app Mac native; Le app da sviluppatori non identificati non sono autorizzati a funzionare per impostazione predefinita.

Se desideri vedere la formulazione dell'allert modificata, si prega di file a Bug Report at https://developer.apple.com/bugreporter .

Questo significa fondamentalmente che non c'è modo di firmare l'applet in modo tale da poter evitare questo messaggio da mostrare. Ho presentato un segnale di bug a Apple dicendo che voglio che la formulazione del messaggio sia cambiata di non contenere parole come non identificate, non verificate, insicure ... perché è l'intero punto di firmare le applet, in modo che gli utenti possano sentirsi tutti caldi e accogliente all'interno quando hanno bisogno di consentire all'applet di funzionare, per assicurarli che ciò che stanno per consentire è ok e verificato e non farà alcun danno al loro computer, e dobbiamo mostrarlo in un posto dove sarà visibile, per colpire gli occhi con esso.

Altri suggerimenti

hai risposto alla tua domanda. Il gatekeeper ritiene che i certificati / le firme non emessi da Apple non siano fidati.

Documentazione Apple ti dirà come esportare il tuo certificato.Puoi quindi usarlo come al solito. CodSign Comando potrebbe anche fare il trucco.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top