Xcode 명령 /usr/bin/codesign이 종료 코드 1로 인해 실패했습니다.errSecInternalComponent

StackOverflow https://stackoverflow.com//questions/24023639

문제

장치에서 앱을 테스트하기 위해 Xcode에 새 프로비저닝 프로필을 추가하려고 합니다.내가 따라온 단계는 다음과 같습니다.

  1. 모든 인증서 및 프로비저닝 프로필을 삭제했습니다.

  2. IOS 개발 인증서 생성/추가

  3. 내 IOS 장치를 온라인으로 추가

  4. IOS 프로비저닝 프로필 생성

  5. IOS 프로비저닝 프로필 추가

  6. 클린 앱

  7. 앱 빌드 후 실행

  8. 빌드 설정에서 공동 설계 및 프로비저닝 프로필 설정

  9. 수많은 인터넷 검색 > 성공하지 못함

내가 얻는 오류는 다음과 같습니다.

CSSM_SignData returned: 800108E6
/Users/alexpelletier/Library/Developer/Xcode/DerivedData/MyExpense-efnqzvoqwngzcmazaotyalepiice/Build/Products/Debug-iphoneos/MyExpense.app:     errSecInternalComponent
Command /usr/bin/codesign failed with exit code 1
도움이 되었습니까?

해결책

열기 키 체인 액세스 , 파일 메뉴 선택 를 선택하십시오.

다음 Xcode로 돌아가서 청소하고 재구성하십시오.키 체인을 잠금 해제하려면 비밀번호를 다시 묻는 메시지가 표시됩니다.

이후 다른 컴파일 문제가 없으면 성공할 것입니다!

다른 팁

코드 서명 메커니즘의 버그처럼 보이는 것처럼 Mac을 다시 시작하면 문제가 해결되어야합니다

로그인 키 체인이 잠겨있을 때 발생합니다.로그인 키 체인 잠금을 해제하려면 실행 :

security unlock-keychain login.keychain
.

빌드 또는 코드 서명 작업을 다시 시도하십시오.문제의 오류 코드는 Apple의 문서 설명 에서 설명합니다.내부 오류가 있으므로 다른 경우에는이 일이 발생할 수 있습니다.

High Sierra / Xcode 9.4.1에서 동일한 문제가 발생했는데, errSecInternalComponent

에 종료 된 모든 시도

    • 키 체인 액세스
    • 로 이동
    • 로그인 키 체인
    • 로 이동
    • "내 인증서"카테고리를 선택하십시오
    • 가입하고있는 인증서를 찾아서 키를 보려면 확장하십시오.
    • 키를 두 번 클릭하십시오
    • "액세스 제어"탭으로 이동하십시오.
    • 업데이트 키 액세스 제어 "모든 응용 프로그램 이이 항목에 액세스 할 수있게 해주는"
  1. 또는

    MAC 터미널에서 CODESIGN 명령을 실행하고 "항상 허용"/ USR / BIN / CODESIGN 액세스

    1. ssh / ci에서 로그인하려고하면

      를 실행해야합니다.
      security unlock-keychain login.keychain
      
      .

      앱 번들에 서명하기 전에

동일한 문제를 만났습니다. 나의 MacOS를 다시 시작하고 작동합니다.

중국의 우리는 개발자 간의 말이 있습니다 :

restart.big 문제가 거의 없어야합니다.

때로는 위의 말은 당신을 크게 도울 것입니다!

다른 사람에게 도움이 되는 경우를 대비해 errSecInternalComponent 오류 codesign 내 macOS 컴퓨터에 대한 SSH 세션을 통해 실행하고 있었기 때문입니다.macOS 시스템 자체의 터미널 창에서 동일한 명령을 실행하면 작동했습니다.

아마도 이런 이유 때문인 것 같아요 codesign 로그인 키체인에서 개인 키에 액세스해야 합니다.

달리기 security unlock-keychain login.keychain (설명대로 cbracken의 답변) 동일한 세션에서도 작동해야 합니다.

ssh 실행 명령에서 로그인하려고하면 다음을 수행하십시오.

security unlock-keychain login.keychain
.

앱 번들에 서명하기 전에

또는 UI

키 액세스 제어 업데이트 "모든 응용 프로그램 이이 항목에 액세스 할 수 있도록"

thx @ Equilibrium 및 @jon mcClung

나는 문제가 앱에 서명하는 코드와 동일한 문제가 있었다.

Opened the developer account and accepted the updated agreement and it worked.  
.

여기에 이미지 설명을 입력하십시오 >>

i security unlock-keychain login.keychain와 내 로그인 암호가 작동하지 않았습니다.그래서 나는 재부팅 한 다음 Xcode를 다시 실행하고 작동했습니다.명령을 실행하면 작동합니다.이상한 문제.

MAC 터미널을 사용하지만 SSH 세션에서 사용하지 않는 한 번만 시도하십시오.

security unlock-keychain login.keychain
.

프롬프트 대화 상자에서 항상 허용을 선택하십시오. 그리고 나서 원격 세션에서 xcodebuild를 할 수 있습니다.

명령 줄에있는 경우 @equilibrium에 의해 지적 된 것처럼.Jenkins (My Case)와 마찬가지로 솔루션에서 언급 한 보안 잠금 해제 명령에 암호를 전달해야 할 수도 있습니다.

사용 대신

security unlock-keychain login.keychain
.

사용 :

security unlock-keychain -p <login-keychain-password> <path-to-login-keychain>
.

PATH-to-LOGIN 키 체인은 $ home / library / keychains / login.keychain (내 경우) 또는 단순히 login.keychain

jenkins와 ssh 에서이 문제가 발생한 사람은 다음과 같습니다.

키 체인의 개인 키에 대한 액세스 권한을 부여하지 못했을 가능성이 높지만이 모든 이유가 작동하지 않는지 확실하지는 않습니다.

  1. 보안 가져 오기 .p12 파일 - -a 또는 -t / usr / bin / codesign
  2. 보안 세트 - 키 - 파티션 목록 -S Apple-Tool :, Apple :, Codesign : -s -k # {password} # {KeychainPath}
  3. 모든 프로비저닝 프로파일을 [uuid] .mobileProvision로 변경하고 Jenkins Server
  4. 에서 '~ / Library / MobileDevice / Provisioning \ Profiles'로 복사합니다.
  5. 깨끗한 파생 데이터 및 재부팅 Jenkins 서버
  6. 재부팅
  7. 기본 키 체인이 로그인 키 체인인지 확인하고 잠금 해제하십시오.
  8. 마침내 해결 :

    1.SSH [사용자] @ [jenkinsserverip] -l 5900 : localhost : 5900, Jenkins Server

    에 로그인

    2. open 'vnc : // localhost'

    Jenkins Server 가이 작업을 허용하는 경우 원격 화면이 시작됩니다.

    그런 다음 keychain.app를 열어 개인 키에 / usr / bin / codesign의 액세스 권한을 부여합니다

    행운

키 체인의 코드 디자인 인증서와 연결된 개인 키를 마우스 오른쪽 버튼으로 클릭 한 다음 '모든 응용 프로그램 허용'을 클릭하면 빌드가 SSH를 통해 발생하기 때문에 빌드가 발생했기 때문입니다.

나는해야만했습니다 :

1) 프로젝트와 연결된 인증서를 삭제합니다

2) Xcode로 돌아가서 앱 인증서를 취소

3) Xcode에는 새 인증서가 필요합니다

4) 모든 키 체인 잠금

5) 프로젝트 청소

6) 재구성

.누구에게도 도움이되기를 바랍니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top