2010-10-19 5 views
5

Version courte:iPhone: comment/si inclure ma clé privée existante dans un nouveau certificat?

moi est-il nécessaire ou même possible de générer un nouveau certificat de distribution basé sur ma clé privée existante, ou est-il pas de mal, tant pour les nouvelles applications et mises à jour des applications existantes sur l'application store, pour générer un nouveau certificat avec une nouvelle clé privée?

Version longue:

Il me semble qu'il ya des informations contradictoires/trompeuses dans le iPhone Developer Program Guide de l'utilisateur concernant les clés privées et l'expiration du certificat de distribution. D'une part, il est conseillé de garder votre clé privée en vie et d'en conserver une copie pour pouvoir l'utiliser sur une nouvelle machine si vous changez de machine de développement. D'après ce que je comprends, vous devez conserver votre seule véritable clé privée (la première que vous générez pour votre entreprise lorsque vous demandez votre premier certificat) et l'utiliser pour toujours (au moins, l'utiliser pour toujours une fois l'application déployée avec cela à l'App Store). D'autre part, il vous indique que les certificats de distribution expirent après un an et vous pouvez simplement demander un nouveau certificat de distribution lorsque vous en avez besoin. Ce qui aurait du sens pour moi serait de suivre un paragraphe qui a commencé "Parce qu'il est essentiel pour vous d'utiliser votre clé privée d'origine lors de la demande de votre nouveau certificat, voici comment vous demandez un certificat créé à partir d'un clé privée existante ... "Mais il n'y a pas un tel paragraphe et après avoir cherché, je n'ai pas entendu parler d'un moyen de le faire.

Il y a ce poste étroitement lié à stackoverflow: Lost Private Key For iPhone Distribution Certificate. What could be solutions?

Les réponses à cette question semblent indiquer que, lorsqu'un certificat de distribution est perdu ou a expiré, vous pouvez révoquer et créer un nouveau et il n'y a aucun effet sur vos applications actuellement sur l'App Store, et vous pouvez continuer à publier de nouvelles applications avec votre nouveau certificat sans Apple en disant "Hey, vous n'êtes pas la même société qu'avant".

Une question clé laissée sans réponse par ce message est de savoir s'il est possible de mettre à jour applications existantes sur l'App Store en utilisant un certificat/clé différent de celui dans lequel les applications ont été précédemment publiées. Mais j'ai entendu ailleurs que c'est aussi possible. Il se résume donc à: Est-ce trompeur qu'Apple donne l'impression que votre clé privée est vraiment celle qui identifie une application comme étant de votre entreprise? S'agit-il simplement de votre identifiant d'application et de vos informations d'identification pour vous connecter au portail de développement et à itunesconnect qui identifient votre entreprise et vos applications?

Répondre

3

Vous pouvez pouvez générer une nouvelle clé privée, et l'utiliser sans interruption de vos applications. Je sais cela d'une expérience de première main - comme j'ai perdu ma clé et ai dû l'invalider, et régénérer un nouveau - après quoi je devais signer une mise à jour de deux de mes applications existantes (signées avec l'ancienne clé) - et soumettez le pour les mises à jour à l'AppStore.

Il n'y a pas eu de perturbations - que ce soit pour les applications existantes après la révocation de la clé - ou pour les nouvelles mises à jour, après que les personnes les aient mises à jour. Aucune donnée utilisateur dans l'application n'a été perdue lors de la mise à jour de l'application. Donc, en bref, tout était complètement transparent.

Un sujet était en cours de discussion pour savoir si les notifications push continueraient à fonctionner correctement (si votre application les utilise).Je ne peux pas parler pour ça, cependant.

+0

Merci. Je suppose que cela signifie que les choses sur la clé privée étant si essentielle est juste trompeuse. Peut-être que c'était plus important dans le passé et ils ont changé la façon dont les choses fonctionnaient mais n'ont pas réparé la documentation. –

Questions connexes