[iphone] Comment gérer l'expiration du certificat Enterprise Distribution?


Answers

Le lien "manquant" est maintenant http://help.apple.com/iosdeployment-apps/?lang=fr#app43ad74a3

Quelques semaines avant l'expiration de votre certificat, demandez un nouveau certificat de distribution auprès du Centre de développement iOS, utilisez-le pour créer de nouveaux profils de provisionnement de distribution, puis recompilez et distribuez les applications mises à jour à vos utilisateurs.

Le document décrit également comment mettre à jour les applications. Il existe des cadres qui incluent le mécanisme de mise à jour facilement dans votre application. Par exemple "Hockey", https://github.com/therealkerni/HockeyKit

Citant l'article complet:

Validation du certificat

La première fois qu'un utilisateur ouvre une application, le certificat de distribution est validé en contactant le serveur OCSP d'Apple. Sauf si le certificat a été révoqué, l'application est autorisée à s'exécuter. L'impossibilité de contacter ou d'obtenir une réponse du serveur OCSP n'est pas interprétée comme une révocation. Pour vérifier l'état, l'appareil doit pouvoir accéder à ocsp.apple.com. Voir Configuration réseau requise.

La réponse OCSP est mise en cache sur l'appareil pendant la période spécifiée par le serveur OCSP, actuellement entre 3 et 7 jours. La validité du certificat n'est pas vérifiée à nouveau tant que le périphérique n'a pas redémarré et que la réponse mise en cache a expiré. Si une révocation est reçue à ce moment-là, l'application est bloquée. La révocation d'un certificat de distribution invalide toutes les applications que vous avez distribuées.

Une application ne sera pas exécutée si le certificat de distribution a expiré. Actuellement, les certificats de distribution sont valables pour un an. Quelques semaines avant l'expiration de votre certificat, demandez un nouveau certificat de distribution auprès du Centre de développement iOS, utilisez-le pour créer de nouveaux profils de provisionnement de distribution, puis recompilez et distribuez les applications mises à jour à vos utilisateurs. Voir Fourniture d'applications mises à jour.

Question

Notre client vient de rejoindre le programme iOS Developer Enterprise. Ils ont signé l'application (développée par nous) avec leur Enterprise Distribution et l'ont installée avec succès dans certains appareils via MDM.

Autant que je sache quand mon certificat de distribution hors entreprise expire, je dois le renouveler. Cette expiration désactive toutes les applications signées avec le certificat expiré dès que les terminaux vérifient la validité du certificat sur le serveur OCSP d'Apple.

Alternativement, je peux révoquer ma distribution non-entreprise avant la date d'expiration et demander un nouveau à Apple. Les applications signées avec le certificat révoqué, par exemple les applications bêta Ad Hoc, seront désactivées selon le même mécanisme.

Donc, avec mon programme développeur, je ne peux pas avoir deux certificats de distribution valides en même temps. Ok, en tant que développeurs, nous pouvons vivre avec ça.

Notre client peut-il avoir deux certificats Enterprise Distribution valides en même temps avec le programme iOS Developer Enterprise?

Selon Apple:

Validation du certificat

La première fois qu'une application est ouverte sur un périphérique, le certificat de distribution est validé en contactant le serveur OCSP d'Apple. Sauf si le certificat a été révoqué, l'application est autorisée à s'exécuter. L'impossibilité de contacter ou d'obtenir une réponse du serveur OCSP n'est pas interprétée comme une révocation. Pour vérifier l'état, l'appareil doit pouvoir accéder à ocsp.apple.com. Voir «Configuration réseau requise» (page 9).

La réponse OCSP est mise en cache sur l'appareil pendant la période spécifiée par le serveur OCSP, actuellement entre 3 et 7 jours. La validité du certificat ne sera plus vérifiée tant que le périphérique n'aura pas redémarré et que la réponse mise en cache aura expiré. Si une révocation est reçue à ce moment-là, l'application sera bloquée. La révocation d'un certificat de distribution invalide toutes les applications que vous avez distribuées.

Une application ne sera pas exécutée si le certificat de distribution a expiré. Actuellement, les certificats de distribution sont valables pour un an. Quelques semaines avant l'expiration de votre certificat, demandez un nouveau certificat de distribution auprès d'iOS DevCenter, utilisez-le pour créer de nouveaux profils de provisionnement de distribution, puis recompilez et distribuez les applications mises à jour à vos utilisateurs. Voir "Fourniture d'applications mises à jour" (page 10)

Ai-je manqué quelque chose ou est-il possible que les employés, avec potentiellement des centaines d'appareils iOS avec plusieurs applications In House, ne puissent pas ouvrir leurs applications en attendant les applications résignées?




Remarque: Le texte hiérarchique ci-dessous indique le chemin d'accès à l'information qui explique la solution. Vous devez naviguer vers (développer les flèches à côté de) les éléments dans la barre latérale pour voir la solution (Mani, s'il vous plaît ne pas supprimer cette information - il est là pour diriger le spectateur à la solution.)

Documentation actuelle d'Apple:

Distributing Enterprise Apps for iOS Devices
    In-house apps
      Certificate validation
      Providing updated apps

http://developer.apple.com/library/ios/#featuredarticles/FA_Wireless_Enterprise_App_Distribution/Introduction/Introduction.html

De Fournir des applications mises à jour:

Vous pouvez avoir deux certificats de distribution actifs en même temps; chacun est indépendant de l'autre. Le deuxième certificat est destiné à fournir une période de chevauchement au cours de laquelle vous pouvez mettre à jour vos applications avant l'expiration du premier certificat. Lorsque vous demandez votre deuxième certificat de distribution auprès du Centre de développement iOS, assurez-vous de ne pas révoquer votre premier certificat.

Qu'il n'y a pas de façon transparente de faire cela pour que tous nos clients internes n'aient pas besoin de voir cela est un manque de fonctionnalité plutôt terrible.




Links