Xcode 4 - Błąd „Nie znaleziono prawidłowej tożsamości podpisywania” podczas udostępniania profili w nowej instalacji Macintosh


209

Miałem Macintosha, którego używałem do tworzenia aplikacji na iPhone'a za pomocą XCode 4. Mam teraz nowego Macintosha z nową instalacją ... wszystkiego.

Podczas otwierania projektów Xcode zbudowanych na starym komputerze Mac nie mogę uruchomić aplikacji na telefonie iPhone skonfigurowanym jako iPhone programistyczny.
Organizator Xcode 4 mówi mi „Nie znaleziono prawidłowej tożsamości podpisu” w moich profilach udostępniania.

Wydaje mi się, że ma to coś wspólnego z plikiem .certSigningRequest, który wcześniej wygenerowałem na starym komputerze Mac (mam kopię zapasową tego pliku), ale co mam z tym zrobić na nowym komputerze Mac?

Kolejna dziwna rzecz: nie widzę moich 5 istniejących profili udostępniania (zdefiniowanych w portalu udostępniania Apple) w organizatorze, nawet po odświeżeniu i po wpisaniu loginu i hasła do mojego portalu udostępniania:

wprowadź opis zdjęcia tutaj


4
W jaki sposób przeniesiłeś swoją tożsamość? Najprostszym sposobem jest użycie przycisków importu / eksportu w dolnej części wyświetlanego okna - eksport z działającego systemu, import do nowego systemu. Powinno to zapewnić skopiowanie wszystkich certyfikatów i profili.
Tommy

2
ale co, jeśli stary komputer ma zły dysk twardy (i nie ma kopii zapasowej) lub jest już sformatowany?
nonpolarity

Właściwie to oczywiste, że pytanie jako komentarz jest złym pomysłem. (Zupełnie nowe pytanie dotyczące przepełnienia stosu. Lub zlokalizowanie istniejącego pytania jest właściwym pomysłem.)
Warren P

Odpowiedzi:


221

W Xcode 4.2 i nowszych wersjach, w tym XCode 4.6, jest lepszy sposób na migrację całego profilu programisty na nową maszynę. Na istniejącym komputerze uruchom Xcode i wykonaj następujące czynności:

  1. Otwórz Organizer (Shift-Command-2).
  2. Wybierz kartę Urządzenia.
  3. Wybierz Profil programisty w lewym górnym rogu w części BIBLIOTEKA, który może znajdować się pod biblioteką nagłówków lub pod nagłówkiem TEAMS.
  4. Wybierz Eksportuj w lewym dolnym rogu okna. Xcode prosi o wybranie nazwy pliku i hasła.

Edycja dla Xcode 4.4:

W Xcode 4.4 w kroku 3 wybierz Provisioning Profile w BIBLIOTECE. Następnie wybierz profile udostępniania za pomocą myszy lub Command-A.

Ponadto Apple wprowadza ulepszenia w sposobie zarządzania tym aspektem Xcode, a niektórzy użytkownicy zgłosili, że przycisk Odśwież w prawym dolnym rogu załatwia sprawę. Spróbuj najpierw kliknąć Odśwież, a jeśli to nie pomoże, wykonaj sekwencję eksportu / importu.

Zdjęcie XCode 4.6 dodane przez WP

wprowadź opis zdjęcia tutaj

Edytuj dla XCode 5.0 lub nowszego:

  1. Otwórz XCode -> Preferencje („Command” + „,”)
  2. Wybierz Apple ID z listy.
  3. Kliknij ikonę USTAWIENIA w lewym dolnym rogu okna i wybierz KONTA EKSPORTU ... Xcode poprosi o wybranie nazwy pliku i hasła.

Na nowym komputerze uruchom Xcode i zaimportuj wyeksportowany powyżej profil. Działa jak marzenie.

Zdjęcie XCode 5.0 dodane przez Ankur

Dla XCode 5 lub nowszych wersji


19
W kroku 3 nie ma „Profilu programisty” wymienionego w BIBLIOTECE. Zamiast tego musiałem wybrać <nazwa mojego zespołu> w sekcji ZESPOŁY.
Steve Onorato,

9
Ciągle pojawia się komunikat „Nie znaleziono ważnej tożsamości do podpisu”!
RGML

7
Mam ponad 2 komputery, których używam do programowania. Wyeksportowałem profil udostępniania na jeden z nich, ale nie mogłem go zaimportować ze strony Organizator> Biblioteka> Profile udostępniania. Musiałem przejść do strony Biblioteka> Zespoły> myUserID, aby móc zaimportować profil programisty.
GLaDOS,

7
Apple „ulepsza” te rzeczy, ale wprowadza nowy ból z każdym krokiem. Wciąż
wyciągam

4
Włączyłem zdjęcie, aby ułatwić to użytkownikom XCode 4.6. JABŁKO NIE ZROBIĆ TEGO ŁATWEGO ????
Warren P

60

Dzisiaj napotkałem podobny problem. Niestety mój HD zmarł na mnie, więc nie mogłem przeprowadzić migracji wymienionej tutaj w zaakceptowanej odpowiedzi. Musiałem wykonać następujące kroki:

  1. Połącz się z centrum członków programistów Apple, a następnie tymczasowym portalem iOS.
  2. Odwołaj mój certyfikat.
  3. Utwórz nowy certyfikat, podając nową parę klucza prywatnego i publicznego.
  4. Usuń wszystkie poprzednie profile udostępniania i utwórz nowe.
  5. Pobierz nowe profile udostępniania i zainstaluj je w XCode, po prostu przeciągając je do ikony XCode w doku.

Ta sama akcja jest również wspomniana w tym poście .


Dzięki, to po prostu zadziałało dla mnie (nie mam ze sobą mojego starego Maca, żeby coś przenieść).
Jamie G,

1
Dziękuję @ tiguero .. Mój HD też się zawiesił .. i po odzyskaniu danych z HD starałem się znaleźć odpowiedź na to samo. Ale kiedy właśnie utworzyłem ponownie certyfikat za pomocą pęku kluczy i portalu informacyjnego. To rozwiązało cały problem. UWAGA: Może być konieczne zmodyfikowanie profilu udostępniania i dodanie do nich nowego certyfikatu, a następnie ponowne pobranie i ponowna instalacja wszystkich. Cheers Coders .. Mam nadzieję, że to pomoże komuś, kto szuka odpowiedzi.
Apple_iOS0304,

1
To bardzo ważna wiedza. (Wymagane Odwoływanie poprzednie zaświadczenie, zanim będzie można utworzyć nowy jest mało intuicyjne, ale to zdecydowanie dobra praktyka operacyjny Apple działa w ten sposób, to sprawia, że życie trudne, jeśli straci swój klucz chociaż.).
Warren P

Jeśli unieważnisz certyfikat, który został użyty do podpisania aplikacji produkcyjnej, czy nie wpłynie to w jakiś sposób na aplikację?
Emmanuel Ay

2
@EmmanuelAy Jeśli członkostwo w programie dla programistów iOS jest ważne, unieważnienie certyfikatu nie wpłynie na istniejące aplikacje w App Store. Zajrzyj tutaj: developer.apple.com/support/technical/certificates
tiguero

16

Upewnij się, że certyfikat znajduje się w pęku kluczy „login”. Zaznacz brelok logowania, jeśli go nie widzisz, wyszukaj go. Następnie przeciągnij cert nad słowami „login”. Zamknij i otwórz XCode, ta-da.


2
Dziękuję bardzo, wszystko wydawało mi się właściwe, z wyjątkiem tego, że moje certyfikaty były w Systemie, a nie w Logowaniu. Przeniosłem je, wszystko działało jak urok!
pat

ohhh, proste klikanie nie działa zgodnie z opisem na stronie developer.apple.com/ios/manage/overview/index.action . Lokalizację należy wybrać ręcznie
sergtk,

9

Musisz skopiować klucz prywatny i certyfikat ze starego komputera Mac. Otwórz Dostęp do pęku kluczy na starym komputerze Mac i spójrz na kategorię Klucze pęku kluczy logowania: klucz powinien tam być. Musisz wyeksportować zarówno klucz publiczny, jak i prywatny, a następnie skopiować yourkey.pemi yourkey.p12na nowy komputer Mac.

Importowanie ich za pomocą dostępu do pęku kluczy prawdopodobnie nie powiedzie się, przynajmniej poniżej 10,6; zamiast tego możesz użyć tych poleceń:

security import yourkey.p12
security import yourkey.pem

Dostęp do pęku kluczy czasami nie eksportuje ani nie importuje kluczy prywatnych. Zamiast tego możesz użyć securitynarzędzia wiersza poleceń. Gwarantuję, że to działa.
LaC

@LaC: czy mogę usunąć niektóre istniejące wpisy na nowym komputerze Mac?
Oliver

Możesz usunąć niepotrzebne wpisy. Jeśli nie masz pewności, czy możesz ich potrzebować, czy nie, oczywiście lepiej ich nie usuwać.
LaC

2
Do migracji profilu programisty należy użyć funkcji eksportu / importu w Organizatorze. Zobacz odpowiedź, którą właśnie zamieściłem.
Steve Liddle

Próbowałem wszystkich innych kroków i nie zadziałały .. Próbowałem tego, a import .p12 działa dobrze, ale .pem mówi, że jest importowany, ale kiedy wchodzę do pęku kluczy, nie pokazują się ... i xCode wciąż mówi, że certyfikat podpisywania jest nieprawidłowy ... ktoś sugeruje?
Michael Rowe

9

Za błąd

Nie znaleziono prawidłowej tożsamości podpisu

zapoznaj się z opublikowanymi instrukcjami Apple dotyczącymi rozwiązania tego problemu.

Jeśli chodzi o problem z „5 istniejącymi profilami udostępniania” w portalu iOS, których brakuje w lokalnej bibliotece w Xcode 4.x Organizer> karta Urządzenia> sekcja Profil udostępniania w Bibliotece.

Zalecam wykonanie kroków, które przeprowadzą Cię przez proces przywracania brakujących profili, a także obejmują przypadek błędu Xcode, w którym Xcode 4.1-4.2.1 omyłkowo usuwa z profili lokalnej biblioteki, które są „Aktywne” w portalu iOS.


1
Podoba mi się ta odpowiedź, ponieważ faktycznie działa, a ich
doktorzy

7

Będziesz musiał przejść do witryny programisty, przejść do certyfikatów i wygenerować nowy dla bieżącego MAC i dodać go do pęku kluczy.

Następnie musisz ponownie dodać profil obsługi administracyjnej. Powinno już działać. Zasadniczo musisz wykonać te same kroki, które zrobiłeś, kiedy pierwszy raz uzyskałeś certyfikat dewelopera.


7

Miałem ten sam błąd, ale problem był nieco inny. Mamy zespół programistów, ale wszyscy używamy tego samego Apple ID (konta programisty), więc kiedy wygenerowałem profil Provisioning, ciągle otrzymywałem ten sam błąd, co w temacie pytania. Potem, mimo że pobrałem certyfikat (pojawia się monit w ramach kroków Development Provisioning Assistant), nadal otrzymywałem ten błąd. Potem odkryłem, że problem polegał na tym, że nasze konto Apple Developer używało Certyfikatu wygenerowanego na moim komputerze z kolegą, więc musiałem go unieważnić i wygenerować nowy certyfikat, a następnie utworzyć profil udostępniania.

Podsumowanie, wyciągnięta lekcja jest taka, że ​​certyfikat używany dla twojego profilu informacyjnego musi zostać wygenerowany na tym samym komputerze, na którym będzie używany profil informacyjny. Jest to szczególnie ważne, aby wziąć pod uwagę, gdy masz zespół programistów współużytkujących ten sam Apple ID.
Mam nadzieję, że to komuś pomoże


6

Moje 2 centy za ten błąd, nawet jeśli nie są związane ze scenariuszem eksportu / importu:

podczas dodawania mobilnego certyfikatu udostępniania (tj. PROVpliku), NIE przeciągaj pliku z Findera do Keychain Access. Zamiast tego wystarczy dwukrotnie kliknąć plik PROV w Finderze, utrzymując gdzieś aplikację Keychain Access.

Rzeczywiście widziałem mój poprzedni element obsługi w pęku kluczy (ten z żółtym światłem) zastępowany nowym, zielonym o tej samej nazwie i identyfikatorze aplikacji. HTH


1
Dziękujemy, również kliknięcie Dodaj w ramach profili obsługi administracyjnej w Xcode Organizer kończy się niepowodzeniem, a jeśli kliknę dwukrotnie plik .mobileprovision, wszystko będzie działać poprawnie.
damix911

5

Napotkałem ten problem dziś rano, kiedy właśnie otworzyłem starą aplikację z innym certyfikatem i umożliwiłem jej dostęp do pęku kluczy. Moja inna aplikacja, która działała całkiem dobrze, przestała działać z tym błędem. Do tej pory wyciągałam włosy, kiedy po prostu to robiłam:

Xcode Menu> Preferencje> Konta> THE_APPLE_ID_THAT_YOU_ARE_USING> Wyświetl szczegóły

W nowym oknie, w lewym dolnym rogu Signing identitiesnaciśnij +przycisk i wybierz iOS Development. Ponownie doda tożsamość, a następnie mój problem zostanie teraz rozwiązany, a aplikacja ponownie uruchomi się na urządzeniu.

wprowadź opis zdjęcia tutaj


4

Mój MAC OS ostatnio się zawiesił. Ponownie zainstalowałem Mac 10.7.4i XCode 4.5. Ale wszystkie profile udostępniania wyświetlały następujący komunikat w organizer.

Valid Signing identity not found

Przez kilka dni starałem się znaleźć pomoc. Później zdałem sobie sprawę, że jeśli przeprowadziłeś migrację z jednego systemu do drugiego (lub sformatowałeś swój system), musisz wyeksportować swój klucz prywatny z pęku kluczy ze starego systemu do nowego systemu (lub nowego zainstalowanego systemu operacyjnego).

Można również wyeksportować swój profil programisty / profil programisty zespołu w organizatorze.

Organizer > Teams > Developer Profile > Export

Mam nadzieję, że to pomoże.


3

Zdarzyło mi się to samo, co Tiguero (dziękuję za odpowiedź, dało mi to nadzieję), ale oto sposób na pozbycie się valid signing identity not foundbłędu bez konieczności usuwania wszystkich profili udostępniania.

Jeśli korzystasz z nowego systemu i nie możesz odzyskać kluczy z innego systemu, rzeczywiście musisz usunąć i ponownie wygenerować nowe Developmenti Distributioncertyfikaty dla Xcode. Możesz to zrobić za pomocą Xcodelub w staromodny sposób za pomocą dostępu do pęku kluczy.

Następnie możesz przejść do Provisioningi na każdej karcie Development, a następnie Distributionkliknąć Editobok profilu, który chcesz zaktualizować, a następnie Modify.

Zobaczysz listę certyfikatów i musisz zaznaczyć pole obok tego, który właśnie utworzyłeś Submit.

Gdy to zrobisz, przejdź do Xcode(używam 4.3.3), Organizer > Devices > Library > Provisioning Profilesgdzie pojawia się komunikat o błędzie, i kliknij Refresh. Po udzieleniu odpowiedzi na monit o podanie loginu programisty Organizerponownie pobierze profile, a komunikat o błędzie powinien zniknąć.


Ponadto, zanim zbudujesz na urządzeniu, prawdopodobnie będziesz musiał przejść do paneli ustawień kompilacji i wybrać nowy profil programisty iPhone'a, aby uniknąć błędu znaku kodowego.
Catherine,

2

Rozwiązałem błąd „Nie znaleziono prawidłowej tożsamości podpisania” z mniej więcej:

  1. Upewnij się, że certyfikat w programie dla programistów iOS jest również wymieniony w dostępie do pęku kluczy i jest ważny (porównaj daty wydania). Jeśli tak nie jest, przenieś go ze starego komputera Mac, korzystając z instrukcji z referencji Apple LUB usuń go ze strony internetowej i dostępu do pęku kluczy, a następnie utwórz go ponownie, pobierz ponownie i przeciągnij nad kodem X.
  2. Usuń wszystkie istniejące profile udostępniania lub tworzenia i rozpowszechniania, a następnie utwórz je ponownie na podstawie nowego certyfikatu, pobierz je ponownie i sprawdź z dostępu do pęku kluczy, czy wszystko jest prawidłowe.


0

Sztuką było dla mnie odkrycie, że chociaż widziałem certyfikat programisty podczas logowania, nie było go w Moich certyfikatach. Rozwiązaniem było wyeksportowanie certyfikatu z pęku kluczy na starym komputerze Mac, a następnie zaimportowanie go do Moich certyfikatów / logowania na nowym komputerze Mac.


0

Nikt jeszcze o tym nie wspominał i może to nie być częsty problem, ale miałem podobny problem z Xcode 5: Upewnij się, że masz domyślny brelok wybrany w Dostęp do pęku kluczy Maca . Wypróbowałem nową instalację Mountain Lion i usunąłem jeden brelok, który okazał się domyślny. Po ustawieniu innego pęku kluczy jako domyślnego (kliknij prawym przyciskiem myszy i wybierz Ustaw brelok „Nazwa pęku kluczy” jako domyślny), Xcode mógł skonfigurować prawidłowe tożsamości podpisywania.


0

Miałem ten problem, ponieważ certyfikat rozwoju systemu iOS powiązany z profilem udostępniania nie był w moim pęku kluczy. Ponownie zainstalowałem OSX i taki był wynik. Zrobiłem następujące:

  • developer.apple.com w obszarze Certyfikaty, identyfikatory i profile
  • wybierz odpowiedni (i ważny) certyfikat rozwoju systemu iOS, pobierz go
  • kliknij dwukrotnie pobrany plik, zostanie on dodany do pęku kluczy
  • błędy w organizatorze znikają

Jeśli nie masz ważnego certyfikatu, wygeneruj nowy i utwórz z nim nowy profil udostępniania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.