2012-05-11 9 views
8

Desidero poter installare un certificato client (tramite e-mail, ad esempio) e quindi utilizzare tale certificato per autenticare le richieste inviate dalla mia app. Ho la sensazione che Apple non consenta questo tipo di accesso, ma non riesca a trovare una risposta definitiva. È vero o esiste un modo per accedere ai certificati client installati sul dispositivo all'interno di un'app?È possibile utilizzare un certificato client installato su un dispositivo iOS all'interno della mia app?

Modifica: Per chiarire, questa è un'app nativa, non una webapp.

risposta

3

L'app può utilizzare solo ciò che si memorizza nel proprio portachiavi (o portachiavi di altre app di terze parti che condividono lo stesso certificato di provisioning). Per quanto riguarda il caricamento effettivo usiamo openssl (abbiamo scritto un wrapper obj-c attorno ad esso) per decodificare il .p12 che inviamo all'app.

I certificati caricati nei profili seting-> general-> sono protetti in qualche modo solo le app integrate (mail, safari) possono aggiungere cose lì.

+0

sarà un app che utilizzano SafariServices essere in grado di utilizzare un cert cliente, memorizzata in gruppo di accesso di Apple, per l'autenticazione? –

0

Per utilizzare i certificati client nell'app, è necessario implementare l'importazione di certificato all'interno della propria app sul portachiavi dell'app. (nota che è necessario utilizzare il formato certificato PKCS # 12, ma è necessario registrarlo nella propria app (cercare UTI e tipi di documento esportati) con diversa estensione, diversa da ".p12", che è già registrata da iOS. 've utilizzato .x-p12 nella mia app) Vedi qui: iOS Client Certificates and Mobile Device Management e qui: https://developer.apple.com/library/ios/qa/qa1745/_index.html

Problemi correlati