Gestione centralizzata delle chiavi per IOS e Android Code Signing

11

Qual è il modo migliore per un'azienda di gestire i certificati di firma del codice? Il valore predefinito sembra essere che le chiavi Apple e Android vengono memorizzate da ciascuno sviluppatore sulle loro macchine.

Vedo sistemi come Amazon Key Management Service e Microsoft Key Vault che sembrano essere ideali per questo, ma non penso che sia effettivamente possibile utilizzarli per le app iOS e Android. Per me, sembra il modo ideale per gestire questo, sarebbe che il codice è sottoposto a un server di chiavi centralizzato, che firma il codice per lo sviluppatore, senza mai rivelare la chiave privata allo sviluppatore. Cambia gli sviluppatori e revochi semplicemente il loro accesso al server di gestione delle chiavi. Quindi hai anche una strategia per gestire tutte le tue varie chiavi. Sembra anche più facile da integrare con la consegna continua.

Esiste una strategia che le organizzazioni utilizzano per gestire le proprie chiavi private per la firma del codice sia per le app iOS che per quelle Android?

    
posta user1724280 30.11.2015 - 20:43
fonte

2 risposte

1

Per iOS e OSX ci sono certificati 'sviluppatore', necessari per eseguire il provisioning su un massimo di 100 dispositivi; e certificati di 'distribuzione', necessari per il caricamento nelle appstore. Il primo è personale ed è vincolato da una licenza sviluppatore. Quest'ultimo potrebbe essere riservato per il tuo Mac aziendale build. L''agente del team' può usarlo e caricare e delegare i diritti. La distribuzione è quella da guardare.

    
risposta data 14.02.2017 - 17:51
fonte
1

È possibile utilizzare uno strumento di firma dell'applicazione che viene memorizzato in modo sicuro e che prende le smart card che contengono le chiavi di firma. Lo strumento di firma delle applicazioni (l'hardware collegato tramite USB che accetta la smart card) può essere memorizzato separatamente sulla smartcard. Gli sviluppatori e i tester possono testare l'applicazione utilizzando le chiavi di sviluppo / test, ma, una volta che l'applicazione è pronta per il rilascio, qualcuno può eseguire la firma finale sotto doppio controllo, a causa dell'accesso separato agli strumenti di cui sopra, e può essere rilasciato alle operazioni per l'implementazione alla produzione.

    
risposta data 01.05.2017 - 15:53
fonte