web-dev-qa-db-fra.com

Xcode 8 indique une erreur: le profil d'approvisionnement n'inclut pas de certificat de signature

Xcode 8 indique une erreur: le profil d'approvisionnement n'inclut pas de certificat de signature.

Ce problème concerne uniquement Xcode-8 et Xcode 7, le même profil d'approvisionnement affichant le certificat identifié associé.

163
Satish Mavani

Pour résoudre ce problème,

Je viens d'activer l'onglet "Gestion automatique de la signature" dans l'onglet général des paramètres du projet, avant de l'activer, j'avais peur que cela puisse avoir des effets secondaires, mais une fois que j'active, cela fonctionne pour moi.

J'espère que cela aide pour les autres!  enter image description here

81
Satish Mavani

Vérifiez dans votre trousseau les identités pour lesquelles il manque une clé privée. J'avais plusieurs certificats de distribution installés pour la même équipe, dont l'un manquait à la clé privée. Xcode vérifiait uniquement la première identité correspondante dans le trousseau et l'utilisait automatiquement par opposition à celle qui incluait la clé privée.

 enter image description here

La suppression de l'identité correspondante sans clé privée a permis à Xcode de détecter à nouveau l'identité correcte.

150
Nick

Il existe de nombreuses façons de résoudre ce problème, par exemple, l'activation de la signature automatique, etc. Toutefois, si vous souhaitez comprendre la raison de cette erreur, vous devez consulter le message d'erreur.

Il indique que le profil d'approvisionnement que vous avez sélectionné dans l'onglet "Général" ne contient pas le certificat de signature sélectionné dans les "Paramètres de construction" -> "Identité de signature de code".

Cela se produit généralement si un certificat de distribution a été sélectionné pour l'identité de débogage sous "Paramètres de construction" -> "Identité de signature de code".

Si cela se produit sous "Signing (Debug)", il se peut également que "Signing Identity" -> "iOS Development" ne soit pas inclus dans le profil d'approvisionnement.

132
Eystein Bye

Pour ceux qui devraient continuer à utiliser non auotamatic pour une raison quelconque

Ouvrez keyChain Access pour voir s'il y a deux mêmes certifications. S'il y en a deux ou plus, supprimez-en une et cela fonctionnera

42
d0ye

J'ai rencontré ce problème après avoir récemment mis à jour Xcode vers la version 9.3 Le problème était lié à la signature de code (en cours de débogage). Le certificat de distribution était défini sur certificat de distribution au lieu du certificat de développement, ce qui m'empêchait d'installer l'application sur mes appareils.

Voici ce que j'ai fait pour résoudre ce problème.

Projet -> Cibles -> Sélectionnez votre application -> Paramètres de construction -> Identité de signature de code -> Débogage -> Double-cliquez sur "Distribution iPhone" et remplacez-le par "Développeur iPhone".

29
Muchab

J'ai décoché puis coché l'option "Gérer automatiquement la signature". Cela a réglé le problème pour moi.

27
Loke

La signature automatique a échoué à chaque fois jusqu'à ce que je supprime manuellement les profils locaux dans:

Après cette signature automatique a parfaitement fonctionné et il a obtenu les bons profils des serveurs Apple.

Cela n'affectait que certaines versions, notamment celles pour lesquelles j'avais créé manuellement des profils pour l'application de surveillance.

22
blackjack75

Pour ceux qui ont encore du mal à résoudre ce problème sous Xcode8. Pour moi était un problème de certificat en double, voici comment je l'ai résolu:

J'ai lu la réponse de Nick et j'ai ensuite commencé mon enquête. J'ai vérifié toutes les clés et certificats dans mon cas particulier (à l'intérieur de ~/Bibliothèque/Keychains/System.keychain).

Lorsque j'ai ouvert le fichier, j'ai constaté que j'avais deux certificats de distribution iPhone (le certificat que Xcode me demandait), un avec la clé privée de distribution iOS que j'utilisais depuis le début et un autre certificat de distribution iPhone private Key avait un nom (iOS Distribution: NAME) qui ne m’était pas familier. J'ai supprimé ce dernier certificat, lancé Xcode à nouveau et le problème avait disparu. xCode n’a pas été en mesure de résoudre ce conflit et c’est la raison pour laquelle il donnait une erreur de certificat de signature tout le temps.

Vérifiez vos trousseaux, vous avez peut-être un certificat en double.

15
S.Go.Mot

Vous pouvez également résoudre les problèmes de signature de code avec un excellent Fastlane toolkit . Les auteurs déploient beaucoup d'efforts pour automatiser efficacement la création, la signature d'applications iOS (et plus encore).

Ainsi, dans la suite mentionnée, il existe un outil sigh qui résout comme par magie tous les problèmes de signature, d'où son nom :) Ce qui est bien, c'est que cet outil encapsule les connaissances sur les problèmes de signature courants et peut détecter et résoudre la plupart d'entre eux.

Fastlane est installé en tant que gem rubis:

gem install fastlane

Et puis simplement invoqué:

fastlane sigh --development

Répondez à deux questions et le tour est joué:

[11:56:55]: No existing profiles found, that match the certificates you have installed locally! Creating a new provisioning profile for you
[11:57:01]: Creating new provisioning profile for 'com.myapp' with name 'com.myapp Development'
[11:57:06]: Downloading provisioning profile...
[11:57:09]: Successfully downloaded provisioning profile...
[11:57:09]: Installing provisioning profile...

Enfin, accédez à Build Settings -> Signing et basculez vers le profil de provisioning nouvellement créé, dont vous avez vu le nom dans la sortie de la commande.

Cet exemple concerne un problème de signature de code de développement (exécuté sur le périphérique). Consultez soupire la documentation pour toutes les autres options.

10
Tomek Cejner

Si vous utilisez la signature manuelle (ce que j'encouragerais certainement), cette erreur peut se produire car Xcode pense qu'il devrait signer une version de version avec un certificat de développeur, qui n'est évidemment pas inclus dans un profil d'approvisionnement de version.

Il existe un paramètre de construction qui définit quel certificat doit être utilisé pour quelle configuration de construction. Pour le changer, allez dans les paramètres de construction et recherchez Identité de signature de code . Lorsqu'il est développé, il doit exister des lignes distinctes pour chaque configuration de construction (généralement Debug et Release) avec dans la deuxième colonne l'identité sélectionnée (généralement iOS Developer ou Distribution iOS). Assurez-vous qu'il est défini sur l'identité correcte pour chaque configuration de construction.

Dans certains cas, les configurations de construction peuvent également être étendues. Assurez-vous que ses sous-éléments sont également définis sur les identités correctes.

7
Mark

Dans mon cas, dans le trousseau j’avais deux certificats avec le même nom, j’ai enlevé l’un des certificats qui est en double puis il a résolu le problème.

5
Arshad Shaik
  1. Supprimez le certificat de développeur qui n'a pas de clé privée.
  2. Supprimez le profil de provisionnement de votre machine à l'aide du dossier Aller au répertoire (~/Library/MobileDevice/Profils de provisionnement).
  3. Ensuite, cochez puis décochez l’option Gérer automatiquement la signature dans les paramètres du projet en sélectionnant l’équipe.
  4. Chantez dans le compte de développeur Apple et modifiez le profil d'approvisionnement en sélectionnant tous les certificats de développeur disponibles, puis téléchargez-le et ajoutez-le à XCODE.
  5. Sélectionnez le profil d'approvisionnement et l'identité de signature de code dans les paramètres de construction du projet.
4
PS_dev

"Activer la signature automatique" puis la sélection d'une équipe dans le menu déroulant m'ont aidé à résoudre ce problème précis.

4
Warp

Eu la même erreur. Profils semble renouvelé, de nouveaux certificats ajoutés, je l’ai même vérifié lors du téléchargement. Également révoqué les certificats d'ancien développeur, exclus du profil de provision. Mais Xcode me pose toujours des questions sur les certificats précédents contenant une erreur:

No certificate for team 'MY_TEAM' matching 'iPhone Developer: FORMER_DEVELOPER' found

alors, ce que j'ai fait pour le réparer: 

  1. Allez Build Settings -> Signing -> Code Signing Identity
  2. Recherchez tous les certificats 'FORMER_DEVELOPER' et choisissez ce dont vous avez besoin. 

J'espère que ça va aider quelqu'un. 

Je n'ai pas encore vu cela mentionné, mais si vous rencontrez toujours des problèmes après avoir recréé vos profils de provisioning, supprimé ceux que vous avez déjà dans votre dossier Profils de provision, recherché des dupes dans votre trousseau, etc. (ouvrez toutes les autres réponses ITT). Cible> Paramètres de construction> Code Signing et assurez-vous que tout semble cohérent. Par exemple, j'avais changé l'identité de la signature de code pour le débogage en une identité de distribution, ce qui ne fonctionnait évidemment pas car le profil de provisioning de développement ne possédait pas le certificat de distribution et était à l'origine de l'erreur.

2
jabruzzi

Si vous essayez de télécharger votre application sur iTunes Connect (vos profils de provisioning sont définis sur Distribution), allez dans Paramètres du projet -> Paramètres de construction -> Signature du code. Assurez-vous de définir toutes les options de débogage et de libération dans votre profil d'approvisionnement de distribution.

2
Niall Kehoe

Pour moi, aucune des solutions ci-dessus n'a fonctionné. J'étais en train de migrer de deux anciens Mac vers un nouveau Mac, en essayant de faire en sorte que les profils de publication/débogage fonctionnent sur Xcode SANS Xcode les gérer automatiquement.

La solution pour moi était que lorsque je suis allé créer les deux nouveaux certificats, i ET devaient également entrer dans mes profils de provisioning et ajouter (sous la distribution et le dev) les nouveaux certificats aux profils de provisioning afin les a reconnus. Après avoir effectué ceci et téléchargé, xcode a supprimé toutes les erreurs et il est bon de partir.

J'espère que cela aide quelqu'un!

2
Jprofficial

J'ai le même problème ... J'ai changé le mac. Et lorsque j'ai téléchargé le certificat Xcode, vous recevez un message d'erreur: "L'erreur est que le profil de sécurité n'inclut pas la signature du certificat."

1) Allez à https://developer.Apple.com/account/ios/profile/limited/edit Sélectionnez le projet => modifier => Certificats => Sélectionner tout => Créer => Télécharger

2) Dans Xcode: Fichier du projet => Signature (Debug) => Profil d’approvisionnement => Profil d’importation => Sélectionner le fichier avec 1

1
maxwell

J'ai reçu l'un de ces courriels d'Apple:

Cher John Doe, 

Le certificat suivant a été révoqué par un membre de votre équipe de développement ou a expiré: 

Certificat: Développement iOS 

Nom de l'équipe: Honey Team, LLC 

Cela n'affecte pas les applications que vous avez soumises à l'App Store ou au votre capacité à mettre à jour vos applications. Si vous utilisez le provisioning profils contenant ce certificat, ils doivent être recréés avant le ils peuvent être réutilisés. Pour plus de détails, voir "Aperçu de la signature des applications" section de l’aide Xcode.

Meilleures salutations, 

Programme de développement Apple


J'ai créé un nouveau certificat qui a révoqué l'ancien certificat (localement et sur le Mac de tout autre développeur). Pour que cela fonctionne, je dois télécharger les nouveaux profils de provision. 

La solution consiste à:

  • se connecter au compte développeur Apple
  • supprimer/révoquer les certificats précédents créés à mon nom. 
  • ajoutez le certificat new au profil de provision. Vous pouvez identifier le plus récent par sa date d'expiration
  • téléchargez-les à nouveau depuis Xcode. Xcode >> Compte >> Télécharger tous les profils
  • redémarrer Xcode

Personnellement, je n'ai pas eu un tel accès. Cet accès n’était disponible que pour l’administrateur de notre équipe. Par conséquent, je n’ai pas de captures d’écran ni certain que ces étapes sont 100% correctes.

1
Honey

Voici les étapes résolues pour moi (Pour ceux qui font face au même problème dans XCode 9.2):

  1. Vous venez de supprimer manuellement les profils locaux dans ~/Library/MobileDevice/Profiles de provisioning.

  2. Supprimé et créé tous les certificats et profil de provisioning du compte de développeurs.

  3. Compte de développeurs supprimé de Xcode et ré-ajouté.

Résolu mon problème! :-)

1
Shoaib Bagwan

Je me suis battu avec pendant plusieurs jours. 

Étape 1: Supprimé tous les certificats, profil de provisioning, appID, clé, etc. du compte développeur.

Étape 2: Recréé les certificats de notification Push, le profil d'approvisionnement, l'ID d'application, etc.

Étape 3: Supprimé tous les certificats du trousseau.

Étape 4: Supprimez tous les profils de provisionnement de ~/Library/MobileDevice/Provisioning Profiles.

Étape 5: Ajouté seulement le fichier de provisioning requis et testé. Ça fonctionne bien.

0
A.G

Essayez de télécharger les certificats/profils directement à partir du centre membre plutôt que depuis Xcode. 

Cela a fonctionné pour moi lorsque je les ai téléchargés manuellement à partir du centre des membres.

0
Somya

Cela signifie que vous devez faire l'une des choses suivantes:

  1. Vous devriez avoir créé un certificat dans le centre des développeurs, puis inclus ce certificat dans le profil d'approvisionnement que vous importerez dans XCode. 
  2. Sinon, si vous utilisez un certificat créé par quelqu'un d'autre, demandez-lui de partager/exporter son certificat et sa clé privée (fichier .p12) et de l'inclure dans votre trousseau. Reportez-vous ici

Une solution au n ° 2 lorsque vous ne pouvez pas obtenir le certificat et le fichier .p12 du créateur serait simplement de cocher l'option 'Gérer automatiquement la signature'. 

0
javatogo

Xcode 11

C'est l'erreur que j'ai

Le profil d'approvisionnement "XXX" n'inclut pas le certificat de signature "Développement Apple: XXX (XXX)".

Maintenant, Xcode 11 a créé automatiquement un certificat "Apple Development: XXX" valable pour toutes les plateformes.

https://developer.Apple.com/account/resources/certificates/list

Vous avez juste besoin de

  1. Allez à https://developer.Apple.com
  2. Accédez à votre profil d'approvisionnement
  3. Vérifier si ce certificat est sélectionné
0
Ted

Ce problème est dû à une clé privée dans le certificat de votre profil qui ne correspond pas à celle de votre trousseau. Je résous ceci par

  1. supprimer tous les certificats de développeur iPhone dans le trousseau.
  2. supprimer tous les certificats du compte Apple.
  3. en utilisant xcode "Manage Certificates" pour ajouter un certificat, vous avez parfois encore un certificat sur votre Mac, mais je ne sais pas où il se trouve pour le moment. Si ajouté avec succès, votre compte Apple affichera également ce certificat. profil avec ce certificat et téléchargement ... goto 5
  4. si vous utilisez "Gérer les certificats", vous ne pouvez pas ajouter de certificat, vous pouvez créer un nouveau certificat et conserver les étapes restantes.
  5. terminer.

même réponse avec Problème de signature de code dans Xcode version 8 .

0
Yu Chai

Cela se produit car le profil d'approvisionnement ne trouve pas le fichier pour le certificat auquel il est lié.

Pour réparer:

  1. Vérifiez quel certificat est lié à votre profil d'approvisionnement en cliquant sur Modifier dans votre profil d'approvisionnement dans la section Certificats, identifiants et profils du tableau de bord Apple Developer. 
  2. Téléchargez le certificat depuis le tableau de bord
  3. Double-cliquez sur le fichier pour l'installer dans votre trousseau
  4. Faites glisser le fichier dans Xcode pour vous assurer qu'il est lié

L'erreur devrait avoir disparu maintenant.

0
Jack

J'ai eu le même problème et la raison était penny. Un profil et un certificat incorrects ont été sélectionnés dans les paramètres de construction. Je ne l'avais fait que quelques jours auparavant. Donc, vous n'avez pas besoin d'activer "automatique" dans xcode. Vérifiez les profils dans vos paramètres de construction avant de le faire.

0
Ruchi

Le fait de cliquer puis d'annuler "Activer la signature automatique" a fonctionné pour moi, même si le changement réel a été le suivant:

ALWAYS_EMBED_Swift_STANDARD_LIBRARIES = YES;

ou dans Xcode ça s'appelle Always Embed Swift Standard Libraries

0
tristanl

Il me restait des clés privées de certificats que j'avais révoqués, les certificats avaient disparu mais pas les clés privées. Leur suppression a résolu le problème.

Pour les trouver:

  1. Accès au trousseau ouvert
  2. Cliquez sur "Clés" sous la catégorie dans le menu de gauche
  3. Recherchez iOS Developer: ... "clés auxquelles aucun certificat n'est associé.
  4. Je les ai supprimés et le problème est parti

La clé en surbrillance dans l'image est un exemple de clé privée sans certificat.

The highlighted item was one key causing issues, deleting it solved issue

0
Dylan w