Restrinja una aplicación específica para que se ejecute solo en dispositivos provistos de MDM

Tenemos un escenario en nuestro proyecto actual de desarrollo de aplicaciones para iPhone.

Necesitamos restringir nuestra aplicación para que se ejecute solo en nuestros dispositivos aprovisionados de Maas360 MDM. La nuestra es una aplicación interna para ciertos empleados.

Si alguien obtuvo el IPA e intentó ejecutar la aplicación en un dispositivo privado (no provisto por MDM), la aplicación debería fallar al iniciarse. Nuestra aplicación utiliza un certificado de distribución de Prod y un perfil de prod para preparar el IPA. ¿Es posible vincular el certificado y el perfil al MDM? Si eso sucede, ¿alguien puede obtener el perfil relacionado con MDM y ejecutar la aplicación en su dispositivo privado? Por favor comparta su conocimiento y pensamientos para este escenario.

Hay una opción para especificar la información del dispositivo junto con el perfil de aprovisionamiento. no podemos hacer eso ya que habrá nuevos dispositivos aprovisionados a través de MDM. necesitamos todo el control a través de un único punto: nuestro MDM.

¿Eres un desarrollador de iOS registrado?

Respuestas (1)

¿Ha considerado usar la configuración de aplicaciones administradas para "señalar" a su aplicación que se está ejecutando en un dispositivo administrado?

Así es como podría implementar:

  1. Agregue un elemento de configuración de aplicaciones administradas a MAAS360. En él, configure una clave específica con un valor 'secreto'. La clave y el valor en sí mismos no importan, siempre que sean únicos y solo usted los conozca.
  2. En su aplicación, implemente una verificación de la clave de configuración de la aplicación administrada en NSUserDefaults. Tire de la clave y verifique que sea el valor secreto que configuró en el paso n.º 1. Si no, la aplicación arroja un error/salidas/lo que sea.

La configuración de la aplicación administrada solo se enviará al dispositivo y estará disponible para la aplicación si se instaló como una aplicación administrada desde la tienda de aplicaciones MAAS360. Si la aplicación se instala sin administrar o desde Apple AppStore, no la recibirá. Si se elimina el perfil MAAS360 MDM, la aplicación se puede eliminar con él (aunque esto puede depender de su configuración de MDM).

Tenga en cuenta que esto solo debe considerarse una solución un tanto segura, ya que se basa en la seguridad por oscuridad y sería bastante trivial para un pirata informático determinado aplicar ingeniería inversa a su IPA y extraer el par clave/valor esperado.

Más información sobre la configuración de la aplicación administrada aquí:

https://developer.apple.com/library/ios/samplecode/sc2279/Introduction/Intro.html