programing

iPhone 앱 서명: 키 체인에서 이 프로필과 일치하는 올바른 서명 ID를 찾을 수 없습니다.

fastcode 2023. 4. 10. 22:19
반응형

iPhone 앱 서명: 키 체인에서 이 프로필과 일치하는 올바른 서명 ID를 찾을 수 없습니다.

을 사용법 ★★★★★★★★★★★★★★★★★★★★★를 다운로드했습니다.iPhone 3.0 SDK하지만 프로비저닝 프로파일이 작동하지 않습니다.제가 시도한 것은 다음과 같습니다.

  • 모든 프로비저닝 프로파일 삭제
  • 로그인 키 체인 삭제
  • 새로운 "로그인" 키 체인을 생성하여 기본값으로 만듭니다.
  • 새 인증서 서명 요청 생성
  • Apple 개발자 센터에서 새 개발자 및 배포 인증서 생성
  • 다운로드 및 설치
  • WWDR 증명서를 다운로드하여 설치합니다.
  • 새 프로비저닝 프로파일을 만들고 두 번 클릭하여 설치합니다.

되지만, 「」는 유효합니다.Xcode요?음음음음음음음음?

편집:

재설치했습니다.Mac OS X로부터 「」를 했습니다.3.0 SDK을 사용법

저도 같은 문제가 있었습니다.이동 중에 작은 MacBook에 인증서를 처음 다운로드했습니다.iMac에 인증서를 설치할 때...그리고 나서 나는 이 페이지에 설명된 문제에 부딪쳤다.

여러분처럼 몇 시간 동안 머리를 뽑은 후, 저는 머리를 고치기 위해 다음 단계를 수행했습니다.

  1. App Dev Center에 로그인해야 하는 웹 페이지를 제외한 모든 항목을 닫습니다.

  2. Xcode를 엽니다.WINDOW > ORGANGER 를 클릭합니다.그런 다음 Devices 탭을 클릭하고 왼쪽에 있는 Provisioning Profiles를 선택합니다.그러면 프로비저닝 프로파일이 표시됩니다.1개 이상 강조 표시하고 우클릭 후 프로파일을 삭제합니다.그래, 그냥 해!다 삭제해! (새로 만들려다가 계속 새로 만들었어.)

  3. 오른쪽에 있는 App Dev Center 로그인 후 표시되는 첫 번째 페이지에서 "iOS PROVISIONING POLTAL" > ('어시스턴트'를 시작하지 마십시오)를 클릭합니다.대신 왼쪽을 클릭합니다.[증명서(Certificates)]를 선택합니다.이름/회사가 기재되어 있는 행은 1개뿐입니다.여기서 오른쪽의 REVOKE를 클릭합니다.확인을 클릭하여 원하는 작업을 확인합니다.

  4. 같은 페이지에서 DEVICES를 클릭합니다.프로비저닝하려는 디바이스 옆에 있는 상자를 클릭하고 선택 항목 제거를 클릭합니다.확인을 다시 클릭하여 확인합니다.

  5. 애플이 그들의 일을 하도록 약 2분 정도 기다립니다.

  6. 이제 왼쪽 네비게이션에 있는 "HOME"을 클릭합니다.

  7. "어시스턴트 실행"을 클릭합니다.

  8. 새 앱 ID를 만듭니다. 원하는 대로 부르세요.당신이 하루 종일 가지고 놀았던 다른 것들은 Apples Dev Center에서 삭제되지 않을 것이기 때문에 당신이 방금 만든 것임을 알 수 있을 만큼 충분히 독특함을 확인하세요.

  9. 나머지 어시스턴트를 문제없이 팔로우 할 수 있습니다.주요는 오래된 프로비저닝 프로파일을 삭제하고 다시 시작해야 한다는 것입니다.

행운을 빕니다.

같은 문제가 발생했습니다.이는 인증서의 개인 키가 시스템에 존재하지 않기 때문입니다.

  1. 새로운 머신을 사용하고 있는 경우는, Web 사이트에서 증명서를 다운로드합니다.이전 시스템에서 인증서를 내보낸 다음 새 시스템으로 가져올 수 있습니다.

  2. 개발자 계정을 다른 사용자와 공유하는 경우:계정 소유자에게 초대장을 보내 해당 계정의 팀 구성원이 되라고 요청합니다.그런 다음 처음부터 자체 인증서를 생성할 수 있습니다.

  3. 이 모든 것을 처리하고 싶지 않은 경우: 웹사이트에서 증명서를 해지하고 로컬머신에서 복사본을 삭제하기만 하면 됩니다.그럼 새로 요청해 주세요.이것이 그러한 문제를 해결하기 위한 궁극적인 방법이어야 한다.

어제도 같은 문제가 있었어.이제 개발자 포털에 서명한 후 비활성 프로비저닝 프로파일마다 "갱신" 버튼이 표시됩니다.갱신 및 갱신된 프로비저닝프로파일 다운로드 후 모두 정상적으로 동작하고 있는 것 같기 때문에 문제는 확실히 해결됩니다.

업데이트: "갱신" 버튼을 얻기 위해 Apple에 문의해야 할 수도 있습니다.그렇지 않으면 삭제될 수 있습니다.해결책은 갱신할 필요 없이 다운로드하여 키체인에 추가하는 것입니다.

개발자 프로그램 포털의 "Certificates -> Distribution" 페이지에서 다운로드 받은 distribution_identity.cer 파일을 키 체인 액세스 프로그램으로 끌어다 놓으면 이 오류가 사라집니다.

나는 그것을 해결했다

a) 포털의 프로비저닝프로파일 페이지로 이동합니다.

b) 문제가 있는 프로비저닝프로파일의 [Edit](편집)을 클릭합니다(오른쪽).

c) [Applicate Certificate](적절한 증명서)박스를 켜고(기본적으로 켜져 있지 않음) 올바른 어플리케이션 ID를 선택합니다(기한이 만료되었습니다).

d) 새로운 프로비저닝프로파일을 다운로드하여 사용합니다.오래된 것을 삭제합니다.

문제의 원인은 다음 4가지가 있다고 합니다.

  1. 키체인에 iPhone Developer 또는 iPhone Distribution 증명서와 관련된 개인 키가 없습니다.
  2. 키체인에 Apple Worldwide Developer Relations Intermediate Certificate가 없습니다.
  3. 인증서가 해지되었거나 만료되었습니다.
  4. 키 체인 액세스 설정에서 Online Certificate Status Protocol(OCSP) 또는 Certificate Revocation List(CRL)가 켜져 있습니다.

.

여기 스레드를 꼼꼼히 살펴보고 사람들이 제안한 모든 솔루션을 확인하면, Apple 개발자 문서에 기재된 CSR 및 모바일 프로비저닝 파일 작성 절차를 따르면, 이 작업을 수행할 수 있습니다.

  1. Xcode를 기동합니다.
  2. window -> Organizer 를 선택합니다.
  3. 이 새로 고침 버튼을 클릭하면 더러운 노란색 막대가 즉시 제거됩니다.

http://img.skitch.com/20100820-1ngm8an14c6fm3dt7g6j51d2nx.jpg

날 믿어, 넌 이것만 하면 돼.올바른 방법으로 작업을 수행하기 위해 프로세스를 반복할 필요가 없습니다.새로 고침을 누르고 로그인 자격 증명을 입력하면 완료됩니다.

증명서와 두 키가 모두 로그인 키 체인에 있을 때만 작동했습니다.이전에 개발 키체인을 만들었는데 Xcode Organizer에서 키를 찾을 수 없었습니다.그래서 로그인으로 되돌리고 키 체인 툴을 종료했습니다.그러면 Xcode Organizer 에러가 사라집니다!이것은 Snow Leopard 10.6.2에서 3.1.3 SDK를 사용한 것입니다.

개발 인증서의 경우 새 인증서를 생성하여 프로파일과 일치시킬 수 있습니다.다만, Apple 에 송신하는 경우 등, 배포의 경우는, 이 조작은 할 수 없고, 팀 에이전트가 작성한 배포 증명서를 사용할 필요가 있습니다.문제는 기계에 개인 키가 필요하다는 것입니다.단, 증명서를 작성한 팀 에이전트가 개인 키를 복사하는 것은 매우 간단합니다.아래는 Apple로부터의 지시입니다.이 방법이 도움이 되었으면 합니다.

여러 컴퓨터에서 개발하거나 시스템 OS를 다시 설치해야 할 경우 개인 키를 안전한 곳에 보관하는 것이 중요합니다.개인 키가 없으면 X코드로 바이너리에 서명하고 Apple 기기에서 응용 프로그램을 테스트할 수 없습니다.CSR가 생성되면 Keychain Access 어플리케이션은 로그인 키체인에 개인 키를 만듭니다.이 개인 키는 사용자 계정에 연결되어 있으며 OS 재설치로 인해 분실된 경우 복제할 수 없습니다.여러 시스템에서 개발 및 테스트를 수행할 경우 작업하는 모든 시스템에 개인 키를 Import해야 합니다.

  1. 개인 키와 증명서를 내보내고 여러 시스템에서 개발을 활성화하려면 Keychain Access Application을 열고 Keys 카테고리를 선택합니다.
  2. 제어 - iPhone 개발 인증서와 연결된 개인 키를 클릭하고 메뉴에서 '항목 내보내기'를 클릭합니다.개인 키는 iPhone Developer(iPhone Developer)에 의해 식별됩니다.즉, 개인 키는 iPhone Developer와 페어링된 공용 인증서입니다.
  3. 개인 정보 교환(.p12) 파일 형식으로 키를 저장합니다.
  4. 다른 컴퓨터에서 이 키를 가져올 때 사용할 암호를 만들라는 메시지가 표시됩니다.
  5. 이제 이 .p12 파일을 시스템 간에 전송할 수 있습니다..p12를 더블 클릭하여 시스템에 설치합니다.스텝 4 에서 입력한 패스워드를 입력하도록 요구됩니다.

가장 좋은 답변은 증명서 파일을 Import하는 것이 아니라 당신의 키를 내보내는 것이었습니다.

요청을 생성한 키 체인에서 키를 내보내면 Certificates.p12 파일이 생성됩니다.이 파일은 필요한 키를 함께 롤합니다.

그런 다음 새 컴퓨터로 가져옵니다.

이와 같은 키를 사용하면 롤된 인증서 패키지 파일을 유지하는 것이 좋습니다. "공개" 키 또는 인증서 파일로는 복원하기에 충분하지 않은 경우가 많기 때문입니다.

제 경우, 프로젝트를 iMac에서 Macbook Pro로 복사했는데, Macbook에 개인 키가 설치되어 있지 않다는 것을 알게 되었습니다.그래서 개인키를 내보내고 복사해서 Macbook에 설치했더니 작동하더라고요!이 정보는 http://www.creatistblog.com/2009/09/iphone-developer-provisioning.html에 기재되어 있습니다.

Xcode 4에 대한 주의사항: Organizer의 왼쪽 창에는 두 개의 섹션이 있습니다.

  1. [ Library ]> [ Provisioning ]프로파일

  2. [ Devices ]> [ your device ]> [ Provisioning

항상 프로비저닝 프로파일을 2로 설정했는데 청소와 설치가 제대로 되어도 작동하지 않았습니다.그리고 1을 발견했고, 마침내 새로 고침 버튼을 찾았습니다.1.에서 '자동 디바이스 프로비저닝'을 선택하고 새로 고침을 클릭하면 모든 것이 검증됩니다(2.에서는 노란색 경고 없음).

어제도 CI 서버에서 비슷한 문제가 발생했습니다.앱 확장에 서명할 수 없습니다.

Code Sign error: No matching provisioning profiles found: No provisioning profiles with a valid signing identity (i.e. certificate and private key pair) matching the bundle identifier XXX were found.

주의: Provisioning Profile은 개발자 포털(Xcode에 의해 관리되지 않음)에서 직접 작성했습니다.

배포 인증서를 사용하여 프로비저닝 프로파일을 생성했지만 개발자 인증서를 사용하도록 빌드 설정이 설정되었습니다.배포 증명서를 사용하도록 변경하면 문제가 해결되었습니다.

여기에 이미지 설명 입력

개요: 빌드 설정에서 프로비저닝 프로파일 작성에 사용된 인증서도 일치시킵니다.

Mac과 장치를 재부팅해 보셨습니까?어설픈 대답이지만, 저는 항상 그걸 먼저 시도합니다.

모든 작업을 다시 한 후 XCode로 빈 프로젝트를 생성하여 디바이스에 구축/실행한 후 작업을 시작했습니다.XCode는 다음과 같은 질문을 하는 창을 보여줍니다.개발자 인증서를 수락하시겠습니까?'항상' 눌렀어요.이 절차를 수행한 후에야 Organizer에서 "A valid signing identity could not found in your keychain" 메시지를 삭제했습니다.

얘들아, 나 어제 이것 때문에 너무 힘들었어.어시스턴트와 함께 당국에 새로운 증명서 요구, 포털의 모든 내용 클리어, 증명서 업로드, 새로운 프로파일 작성 및 다운로드 등 모든 과정을 여러 번 거쳤습니다.주사위는 없어요.

하지만 이것 좀 보세요.

먼저 포털의 모든 증명서를 클리어하고 새로 시작합니다.

길잡이로 새 인증서 요청을 만든 후 "검색기에 표시"를 누르고 해당 불량 소년을 두 번 클릭합니다.Certificate Assistant 팝업과 함께 "발급 인증국을 지정하십시오" 등의 화면이 나타납니다.그렇지 않으면 닫은 후 다시 두 번 클릭합니다.대화 상자에서 "기존 CA에서 인증서 요청"을 선택하면 됩니다. - 계속 요청은 "디스크에 저장됨" - 원하는 위치에 저장하거나 파일을 재정의할 수도 있습니다.

마지막에는 "쌍 생성" 마법이 나타납니다.

KeyChain 액세스로 달려가면 열쇠가 보일 거예요!이 증명서를 Apple 포털에 업로드한 후 정상적으로 마법사를 실행하면 모든 것이 정상적으로 작동합니다.

2개의 다른 프로비저닝프로파일(개발과 배포)에는 2개의 다른 증명서가 있습니다.양쪽 증명서를 키체인에 설치해야 합니다.iPhone 개발자 프로그램 포털에서 다음을 수행합니다.

증명서 -> 개발 -> 증명서 다운로드 -> 배포 -> 다운로드

양쪽 증명서를 더블 클릭합니다.그 후 두 증명서가 키체인에 표시되어야 합니다.

정답은 현재 개발 인증서를 해지하고 새 인증서를 만드는 것입니다. 애플 사이트의 지침을 따르십시오.그렇게 간단해!!난 정확히 이런 문제가 있었어.

간단한 절차:

  1. 컴퓨터의 키 체인(개발 키가 이미 포함되어 있음)에서 시작하여 인증서 요청을 만듭니다.개발 사이트에 요청을 업로드하고 인증서를 생성합니다.
  2. 증명서를 사용하여 프로파일을 만듭니다.
  3. 프로파일을 다운로드하여 Xcode에 놓습니다.

이제 모든 점들이 연결되어 있고 작동해야 합니다.이것은 개발 및 배포 모두에 유효합니다.

개발자 계정에 로그인하여 개발 인증서를 해지했습니다.개발증명서 해지 및 다운로드 후 새로 다운로드 받은 인증서를 더블클릭하여 KeyChain Access에서 개발증명서에 개인키가 있었습니다.

이를 확실하게 하기 위한 좋은 방법은 먼저 로그인 키체인을 완전히 청소하는 것입니다.

또한 개인 키와 공용 키를 가져오기 전에 키 체인을 잠금 해제하는 것이 매우 중요합니다.

 security unlock-keychain -p password ~/Library/Keychains/login.keychain 

로그인 키 체인으로 개인 키를 Import합니다.

security import PrivateKey.p12 -k ~/Library/Keychains/login.keychain 

1개의 아이덴티티가 Import되었습니다.

공용 키를 로그인 키 체인으로 Import합니다.

security import PublicKeyName.pem -k ~/Library/Keychains/login.keychain 

1개의 키를 Import.

저도 같은 문제가 있었습니다만, Mac에 「FileVault」를 설정했기 때문입니다.키 체인으로 들어가 "로그인"을 기본값으로 설정했고, 이를 수정했습니다.

"이것은 Apple 포털 사이트의 버그입니다.프로비저닝 프로파일에서 필수 필드가 누락되었습니다.이 버그는 2009년 6월 16일에 늦게 수정되었습니다."

정말 건너뛴 건지 아니면 그냥 멍하니 보고만 있는 건지 모르겠지만...

혹시나 누군가 나와 같은 일을 간과하고 있을지도 모르니까...

당신이 개발하고 테스트 할 때처럼...

1) 배포 <<증명서 >> 2) 배포 <<프로비저닝 프로파일 >>

서명을 받기 위한 포털의 두 단계입니다.

개발자인 CERTIFICATE를 생성하여 Mobile Provisions 폴더에 복사한 결과 왜 작동하지 않는지 궁금했습니다.

프로비저닝 프로파일을 작성하자마자

빙고

저도 똑같은 문제가 있어서 다 해봤어요.어떤 이유로든 해결책은 모든 증명서가 "microsoft_intermediate_certificates"라는 키 체인으로 이행되는 것이었습니다.아마 Xcode 업그레이드 중에 일어난 일이기 때문에 이유는 전혀 알 수 없지만 누군가에게 도움이 될 수도 있습니다.

마이크로소프트 키체인의 모든 콘텐츠를 로그인 키체인으로 옮겼더니 모든 것이 정상으로 돌아갔습니다.

처음 게시된 것과 같은 문제가 발생한 후 4번의 시도 끝에 드디어 작동하게 되었습니다.그래서 이렇게 된 것입니다.지금(2009-07-09)이 오래된 문제인지는 잘 모르겠습니다만, 그래도 도움이 될 것 같으면 투고하겠습니다.내게 효과가 있었던 건...잘 될 것 같은데...

  1. 새로 시작하여 키 체인 내의 오래된 개인 키, 공개 키 및 증명서를 삭제합니다.
  2. 전체 과정을 거쳐 인증 기관에 인증서를 요청하고 새 공용 키, 새 개인 키 및 새 인증서를 얻습니다.주의: 작동했을 때 개인 키 1개, 공용 키 1개 및 인증서 1개를 가지고 있었습니다.
  3. 새로운 프로비저닝프로파일을 만들고(이 프로파일은 방금 작성한 증명서를 사용합니다), 그것을 Xcode의 Organizer 창에 넣습니다.오래된 BS를 모두 삭제합니다.
  4. 실행하다.

이게 도움이 됐으면 좋겠다.

여기 있는 모든 사람들은 매우 틀렸다.필요한 것은, Apple이 제공하는 「디지털 ID 관리」의 순서에 따르는 것 뿐입니다.

Xcode를 통해 인증서를 내보내고 Xcode를 통해 다시 가져오도록 지시합니다.정상적으로 동작합니다만, 양쪽의 컴퓨터에서 유저명이 같은 것을 확인해 주세요.그렇지 않으면 실패합니다.

개발 라이선스를 갱신한 후 갑자기 나타난 이 퍼즐루기너 문제에 대해 몇 시간밖에 걸리지 않았습니다.거듭 말씀드리지만, 모든 것이 차질없이 진행되었고, (감사합니다!) 애플은 모든 것을 망쳤고 계속 망쳤습니다.Apple의 공식 트러블 슈팅 순서(위 링크) 또는 가능한 해결 순서는 여기에 기재되어 있지 않습니다.

결국 개발 인증서와 배포 인증서를 모두 삭제하고 프로비저닝 포털에서 해지한 다음 Xcode가 자동으로 새로 고침/발급하도록 했습니다.그 외에는 어떤 순서로든 개인 키가 올바르게 연결된 상태에서 두 개의 필수 인증서를 모두 키 체인으로 가져올 수 없었습니다.

내가 한 일은 이렇다.

  1. 인증서가 만료되지 않았는지 확인하고 만료된 인증서를 모두 삭제하십시오.새로운 것을 입수하는 등, 모든 것이 적절한 것을 확인하면, 프로젝트 파일에 초점을 맞춥니다.
  2. finder에서 .xcodeproj 파일로 이동하여 패키지 내용을 표시합니다.
  3. xcode 또는 textedit으로 project.pbxproj를 엽니다.
  4. PROVISIONING_PROFILE에 대한 모든 참조를 찾아 GUID를 삭제합니다.빈칸으로 둡니다." 프로젝트에 따라서는 12개 이상의 참조가 있을 수 있습니다.GUID를 모두 삭제합니다.

  5. 파일을 저장한 후 XCODE로 프로젝트를 다시 엽니다.

  6. 가능한 모든 코드 서명에 대해 올바른 프로비저닝 프로파일을 다시 선택합니다(모두 동일하지 않아야 함).
  7. 프로젝트를 구축하면 준비가 완료됩니다.

Xcode는 다소 혼란스러운 것 같습니다.project.pbxproj에서 모든 Provision Profiles를 삭제하고 유효한 프로파일을 다시 선택하면 Straged가 됩니다.

새로운 mac이 있는 경우 IOS 개발자 센터 --> Provisioning Portal --> 증명서 --> 개발 --> 증명서를 해지하고 새로 만들 수 있습니다.내 문제는 해결되었다.오류는 "Code Sign error: 코드 서명 오류:아이덴티티 'iPhone Developer'가 키체인의 유효한 증명서/개인 키 쌍과 일치하지 않습니다.

필요한 것:

1) 개인키와 공개키.

키 체인에는 다음과 같은 기호가 있습니다.

alt 텍스트

2) 해당 키의 서명요청으로 작성된 증명서

3) 해당 증명서에 링크된 프로비저닝프로파일

컴퓨터를 변경하고 프로비저닝 프로파일을 사용하여 Xcode를 다시 설정하려고 합니다.어떻게 하는 거야?

  1. Xcode를 열고 Ctrl + O를 눌러 Organizer를 열고 이미 설치된 모든 프로비저닝 프로파일을 삭제합니다.
  2. 키 체인 액세스를 열고 파일에 저장할 서명 요청을 만듭니다(요구를 작성하면 키 체인 내에 개인 키와 공용 키가 생성됩니다).
  3. 이 서명 요청을 애플로 전송하여 프로비저닝 포털에서 인증서 생성/업데이트
  4. 새로 생성된 증명서를 다운로드하여 설치합니다.
  5. 프로비저닝 프로파일을 취소하고 새 인증서로 업데이트합니다.
  6. 새로 업데이트된 프로비저닝 프로파일을 다운로드하여 설치합니다.

언급URL : https://stackoverflow.com/questions/999313/iphone-app-signing-a-valid-signing-identity-matching-this-profile-could-not-be

반응형