2012-05-11 19 views
8

Deseo poder instalar un certificado de cliente (por correo electrónico, por ejemplo) y luego usar ese certificado para autenticar las solicitudes enviadas por mi aplicación. Tengo la sensación de que Apple no permitirá ese tipo de acceso, pero no puede encontrar una respuesta definitiva. ¿Es cierto o hay una forma de acceder a los certificados de cliente instalados en el dispositivo desde dentro de una aplicación?¿Es posible usar un certificado de cliente instalado en un dispositivo iOS dentro de mi aplicación?

Editar: Para aclarar, esta es una aplicación nativa, no una aplicación web.

Respuesta

3

Su aplicación puede usar solo lo que almacene en su propio llavero (o llaveros de otras aplicaciones de terceros que comparten el mismo certificado de aprovisionamiento). En cuanto a la carga real, usamos openssl (escribimos un contenedor obj-c alrededor) para decodificar el .p12 que enviamos a la aplicación.

Los certificados cargados en seting-> general-> perfiles están protegidos de alguna manera, solo las aplicaciones integradas (correo, safari) pueden agregar cosas ahí.

+0

será una aplicación que utilice SafariServices ser capaz de utilizar un certificado de cliente, almacenada en grupo de acceso de Apple, para la autenticación? –

0

Para usar certificados de cliente en su aplicación, debe implementar la importación del certificado dentro de su aplicación al llavero de su aplicación. (tenga en cuenta que necesita utilizar el formato de certificado PKCS # 12, pero debe registrarlo en su aplicación (busque UTI exportadas y tipos de documentos) con una extensión diferente, distinta de ".p12", que ya está registrada en iOS. he usado .x-p12 en mi aplicación) Ver aquí: iOS Client Certificates and Mobile Device Management y aquí: https://developer.apple.com/library/ios/qa/qa1745/_index.html

Cuestiones relacionadas