2010-02-22 19 views
12

Produciamo un sistema di gestione dei contenuti. È un sistema basato su database, utilizzato solo da aziende e organizzazioni e mai scaricabile da Internet. Cioè, non è il tipo di software che qualcuno potrebbe inciampare e chiedersi di cosa si tratta e se è sicuro di funzionare. Negli oltre 20 anni in cui il nostro sistema viene venduto, i suoi eseguibili non sono mai stati firmati digitalmente. È tempo per noi di iniziare a firmarli?Quanto è importante firmare digitalmente i nostri file eseguibili?

Per cominciare, mi viene in mente un paio di pro e contro:

  • Pro: Se si utilizzano i certificati Verisign, Windows Error Reporting può essere utilizzato
  • Pro: Quando Windows   Vista e Windows   7 mostrano una delle quelli fastidiosi messaggi UAC, le applicazioni firmate sono presentate un po 'più piacevolmente
  • Con: i certificati costano. Non molto, ma se sono inutili è troppo
  • Con: La firma ha un sovraccarico di manutenzione, quanto non lo so.

risposta

2

Dal punto di vista tecnico hai già affermato i pro/contro.

Dal punto di vista del business dipende dai vostri utenti, forse se vendete B2B non importa come se steste vendendo B2C o ad utenti meno esperti che apprezzerebbero un messaggio UAC più gradevole.

Onestamente, non mi preoccuperei .... Se non hai avuto la voglia e non riesci a trovare una buona ragione, allora non è ancora importante.

Preferisco spendere quegli sforzi per migliorare qualcos'altro.

0

La firma ha un sovraccarico di manutenzione, quanto non lo so.

Credo che se si distribuiscono gli eseguibili firmati, tutte le librerie dipendenti devono essere firmate. Se stai utilizzando alcuni moduli di terze parti su cui non hai alcun controllo, puoi ottenere un problema.

+0

Vuoi dire firmato usando lo stesso certificato, o firmato da qualsiasi certificato? Il primo non è possibile (non può firmare kernel32.dll), ma anche il successivo sembra un problema. È possibile firmare un eseguibile di terze parti non firmato da noi, dato che è distribuito con la nostra app? – eran

4

Pro: Se si utilizzano i certificati Verisign, Windows Error Reporting può essere utilizzato

In realtà, per utilizzare Segnalazione errori di Windows è necessario Verisign o un codice accettato altro certificato di firma, ma è necessario il certificato solo per l'accesso il sistema WinQual. L'exe stesso non deve essere affatto firmato, la segnalazione degli errori funziona perfettamente anche sugli ex non firmati.

Con: La firma ha un sovraccarico di manutenzione, quanto non lo so. Mi piacerebbe molto da voi ...

Il sovraccarico di manutenzione dipende molto dalla qualità della vostra pipeline di costruzione. Se costruisci la tua applicazione manualmente, allora sì, significa qualche passo in più. Tuttavia, se hai una pipeline di build e le tue build sono automatizzate, la firma del codice significa aggiungere poche righe negli script di compilazione e memorizzare la chiave privata del certificato di firma del codice in modo che la build possa accedervi (se hai un server di build, molto probabilmente il tuo certificato di firma del codice deve essere memorizzato su di esso).

Pro: Quando Vista/7 mostrano uno di quei messaggi UAC fastidiosi, le applicazioni firmate vengono presentati un po 'più ben

Per quanto riguarda la richiesta UAC - fa si' applicazione davvero bisogno privilegi elevati o di amministratore per l'esecuzione ? Il modo migliore per evitare questo prompt non è di richiedere alcun privilegio elevato.

+0

Hai ragione riguardo ai messaggi del Controllo dell'account utente: dopo aver apportato un po 'di lavoro, la nostra app ora funziona con i privilegi dell'utente, quindi quei messaggi non dovrebbero apparire comunque. Ma se altri lo fanno (firewall, per esempio), probabilmente saranno più belli se l'app è firmata. – eran

+0

I messaggi del firewall e altre cose simili possono essere gestiti da una configurazione (a condizione che si stia utilizzando una configurazione). L'esecuzione della configurazione con privilegi elevati è generalmente considerata ragionevole, ma l'esecuzione dell'applicazione non lo è. – Suma

Problemi correlati