카테고리 없음

UE4 IOS Remote 빌드를 위한 Window에 Certificate, Provisioning 등록 방법

TigerFish 2020. 8. 21. 16:14

목적

 

Window PC에서 Remote 빌드시 Window에 IOS Provisioning 인증서를 등록하는데 에러가 있는 경우가 있어서 등록하는 방법을 기록해봅니다.


환경 

 

UE4.26.1, Window10, MacOS Catalina, Xcode11.1


Certificate, Provisioning 등록 방법

 

Unreal에서는 Provisioing을 IPhonePacker로 생성해서 등록하기를 권장하고 있다. 그런데 Apple 개발자 계정으로 등록하면 Provisioning 등록이 꼬이는 현상이 발생하는데 매번 등록할 때 마다 에러가 발생하여기록을 남긴다. 

 

MacOS 

 

  1. KeyChain 에 Login, System에 Certificate 등록
  2. Xcode에 Certificate 등록
    1. 빈 프로젝트 생성하여 Identifier, Team 설정(없으면 None으로 설정), Provisioining 선택 후 빌드하면 등록 완료

 

Window

 

  1. Iphone packer로 등록 시도
    1. Iphone packer(%Unreal Engine Path%\Engine\Binaries\DotNET\IOS\IPhonePackager.exe)를 관리자 권한으로 실행해 주고 언리얼 도큐먼트에 따라(https://docs.unrealengine.com/4.26/en-US/SharingAndReleasing/Mobile/iOS/Provisioning/) 생성 또는 등록을 해준다. 
  2.  Iphone packer 등록 실패시
    정확한 원인은 모르겠지만 실수로 Certificate를 눌러 두번 등록해준다던가 기존에 인증서가 꼬여서 실행이 안되는 경우가 있었다. 그럴때에는 기존의 인증서를 제거해주고 수동으로 등록해주면 등록이 되었다. 
    1. 기존 인증서 삭제
      1. Certmgr.msc 에서 기존 인증서 삭제
        1. 실행 - Certimgr.msc - 인증서 관리 창 - 개인용 - 인증서 - 기존 인증서 삭제
      2. MMC에서 기존 인증서 삭제
        1. 실행 - MMC - 파일의 스냅인 추가/제거 - 인증서 선택 - 인증서 스냅인 - 로컬 컴퓨터 - 기존 인증서 삭제 

  3. 새 인증서 등록
    1. Certmgr.msc에 새 인증서 수동 등록
      1.  
    2. MMC에 새 인증서 수등 등록
      1. MMC에서 인증서 등록(참고 : https://stackoverflow.com/questions/12106011/system-security-cryptography-cryptographicexception-keyset-does-not-exist)
      2. 위의 링크를 참고할때 주의해야할 사항
        1. 인증서 등록시 Certificate import시 Mark this key as exprotatable. This will allow you to back up or transprot your kes at a later time항목은 자동으로 선택되지 않으니 수동으로 선택
        2. IIS_IUSRS 사용자 등록
          1. 인증서 - 우클릭 - 개인 키 관리 - 보안 - 추가 - 선택할 개체 이름을 입력하십시오 - IIS_IUSRS 입력 - 이름 확인 - 확인
        3. 위처럼 USER 계정 등록

 

 

3. Iphone packer로도 등록이 안되고, Window에서 수동으로 등록을 해도 안된다면 Certifcate가 망가진 걸 수 도 있다. 다시 발급 받고 등록해주자

 

https://improveandrepeat.com/2018/12/how-to-fix-the-keyset-does-not-exist-cryptographicexception/

 

How to Fix the “Keyset does not exist” CryptographicException

We recently run into a strange problem when we tried sign a message using a private and public key pair. Everything worked as expected on the developer machine, yet in the test environment the same…

improveandrepeat.com