Puede enviar la aplicación como una aplicación completamente gratuita en la AppStore pero requiere que el usuario inicie sesión y se autentique para usarla. De esta forma, cualquiera puede descargarlo pero usted controla quién realmente puede usarlo. Apple hace toda la distribución por usted y no tiene que preocuparse por las implementaciones Ad-Hoc o los departamentos de TI.
A continuación, crea un sistema de gestión de configuración realmente simple en un host web (o plataforma como Google App Engine) que gestiona la autenticación de aplicaciones.
Cuando un usuario inicia la aplicación gratuita, se le pide un nombre de usuario/contraseña/lo que sea. Esa información se envía al sistema de gestión de configuración basado en la web y se confirma. Si la aplicación recibe una confirmación aceptable del sistema de gestión de configuración, se desbloquea para que la use ese usuario.
La aplicación puede volver a autenticarse cada vez que se inicia (útil si desea un gran control) o puede almacenar localmente un archivo de clave que indica que se ha autenticado.Si ve el archivo de clave local cuando se inicia la aplicación, se considera autenticado y nunca vuelve a verificar.
Si usted usa una cuenta de usuario por persona o una para toda la compañía, usted decide.
Este estilo de distribución es muy útil si desea tener control sobre quién puede usar la aplicación, pero desea la facilidad de implementación que proporciona la AppStore.
Apple ha aceptado muchas aplicaciones en la AppStore que utilizan este método de autenticación en un servidor remoto (Skype es un ejemplo perfecto).
Si realiza un seguimiento del dispositivo UDID en el servidor de configuración también puede precargarlo para permitir que un cierto conjunto de dispositivos funcione. Además, nada de lo que he descrito es específico para iPhone. Puede utilizar el mismo sistema de gestión de configuración y conceptos en otras plataformas como Android (o incluso computadoras de escritorio) si alguna vez transfiere la aplicación o crea otras aplicaciones que lo necesiten en el futuro.
Además, dado que la acción de autenticar dispositivos no requiere mucha información ni procesadores, es probable que nunca incurras en un costo si construyes esto en Google App Engine ya que nunca superarás las cuotas gratuitas y obtendrás la estabilidad y escalabilidad de Arquitectura de back-end de Google. Como esta implementación particular es para administrar un sistema de back-end interno desplegarlo a través de la AppStore puede parecer inseguro porque hay información patentada incrustada en la aplicación, en particular la información que le permite conectarse y autenticarse contra los sistemas de back-end.
La solución a eso es no incluir esta información dentro de la aplicación y simplemente hacer que esa información sea parte de la respuesta que la aplicación recibe del servidor de administración de la configuración. Básicamente, la aplicación contiene la lógica necesaria para realizar su función, pero sin la información de conexión no tiene la capacidad de administrar ningún sistema de fondo.
Si hace que la aplicación se autentique cada vez que se inicia, puede cambiar la información de conexión en el servidor de configuración y la aplicación se actualizará a la nueva información sin necesidad de una nueva implementación. El usuario solo necesita reiniciar la aplicación. Esto le da a su cliente la flexibilidad de cambiar su configuración de red interna sin invalidar su código de aplicación. También puede hacer que esta información sea configurable manualmente dentro de la aplicación, pero luego incurre en un costo de TI al configurar la aplicación en cada dispositivo y si ya va a configurar un sistema de administración de la configuración, podría usarlo. Para asegurar aún más la solución anterior, es posible que desee tener el sistema de administración de configuración internamente y detrás del firewall de la empresa para que independientemente de quién se quede con la aplicación no puedan conectarse al sistema de configuración a menos que estén dentro la red de la compañía
he desarrollado una en la casa aplicación, intento abrir el enlace de arriba http://devworld.apple.com/programs/ios/enterprise/--- pero no funciona, de todos modos solo quería confirmar que es posible para una empresa pequeña (aproximadamente 200 empleados) y también el cliente puede descargar esta aplicación interna sin el uso de la tienda de aplicaciones? gracias – Pooja
@Pooja - es posible que una pequeña empresa distribuya una aplicación empresarial (de hecho, mi cliente tiene aproximadamente ~ 50 empleados). Técnicamente, un cliente * podría * descargar * esa aplicación, pero tendría que tener mucho cuidado con la distribución. Cada aplicación viene con su certificado de distribución empresarial. Los usuarios malintencionados pueden extraer ese certificado y comenzar a firmar con él su propia aplicación, lo que claramente no es un resultado deseado. – Luke