In quali casi iOS verifica la validità dei certificati aziendali?

12

Ecco un articolo che dovrebbe dare un po 'di più contesto (e vedere il mio commento su di esso, stesso nome utente, per ulteriori informazioni).

Gli sviluppatori iOS sono in grado di distribuire app all'esterno dell'App Store utilizzando un profilo di provisioning Enterprise. Ciò consente alle app di essere installate anche direttamente da Safari senza la necessità dell'approvazione di App Store, consentendo ai non sviluppatori di testare le versioni beta, le aziende a distribuire app interne ai dipendenti, ecc.

Tuttavia, sia Apple che il titolare dell'account aziendale mantengono la possibilità di revocare il certificato eseguendo il backup del profilo di provisioning, il che impedirebbe agli utenti di installare l'app (nel caso dell'articolo collegato sopra, Apple ha revocato il profilo aziendale utilizzato per firmare l'emulatore perché lo consideravano un abuso della libertà concesso dalla distribuzione aziendale) ... escludendo, ovviamente, la "scappatoia" utilizzata per ignorare tale controllo: è sufficiente modificare la data di sistema in qualsiasi data nel passato.

Ciò solleva molte domande su come viene implementata la convalida del certificato, ma sono molto curioso di sapere cosa succede quando la scappatoia non viene sfruttata. A che punto il dispositivo raggiunge effettivamente Apple per assicurarsi che il certificato non sia stato revocato? Al momento l'app è installata? Se questo è il caso, è "soft" (consente l'installazione a meno che la revoca non venga rilevata esplicitamente) o "difficile" (vieta l'installazione a meno che il certificato sia assolutamente provato ancora valido)? Oppure il dispositivo effettua periodicamente il check-in con Apple per ottenere una lista nera / lista bianca aggiornata delle identità dei certificati aziendali? O è qualcosa di diverso?

    
posta n00neimp0rtant 12.10.2014 - 19:50
fonte

2 risposte

5

Dal documento di riferimento tecnico sulla distribuzione di iOS 7 (apre un PDF) :

Certificate validation
The first time a user opens an app, the distribution certificate is validated by contacting Apple’s OCSP server. Unless the certificate has been revoked, the app is allowed to run. Inability to contact or get a response from the OCSP server isn’t interpreted as a revocation. To verify the status, the device must be able to reach ocsp.apple.com. See “Network Configuration Requirements,” earlier in this appendix.

The OCSP response is cached on the device for the period of time specified by the OCSP server—currently, between three and seven days. The validity of the certificate isn’t checked again until the device has restarted and the cached response has expired.

If a revocation is received at that time, the app is prevented from running.

Revoking a distribution certificate invalidates all of the apps you’ve signed with it. You should revoke a certificate only as a last resort— if you’re sure the private key is lost or the certificate is believed to be compromised.

    
risposta data 16.12.2014 - 16:44
fonte
1

La risposta più aggiornata è disponibile nel Riferimento per la distribuzione di Apple Enterprise Enterprise:

link Vedi: convalida del certificato

The first time a user opens an app, the distribution certificate is validated by contacting Apple’s OCSP server. If the certificate has been revoked, the app won’t launch. To verify the status, the device must be able to reach ocsp.apple.com.

    
risposta data 19.05.2016 - 07:38
fonte

Leggi altre domande sui tag