Apple 푸시 알림을 설정하는 데 사용되는 .pem 파일 생성


290

클라이언트 계정에서 인증서를 생성 한 다음 터미널을 사용하여 .pem 파일을 생성 할 때마다 .pem 파일을 생성하려고 시도했지만 아무 소용이 없습니다. 누구나 단계별 절차를 제공 할 수 있습니까?

답변:


936

iOS 앱에 푸시 알림을 활성화하려면 Apple 푸시 알림 인증서 (.pem 파일)를 생성하고 업로드하여 사용자를 대신하여 Apple 푸시 서버에 연결할 수 있습니다.

( 스크린 샷이 업데이트 된 업데이트 된 버전 )

1 단계 : iOS 프로비저닝 포털에 로그인하고 왼쪽 탐색 표시 줄에서 "인증서"를 클릭하십시오. 그런 다음 "+"버튼을 클릭하십시오.

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

2 단계 : 배포 섹션에서 Apple 푸시 알림 서비스 SSL (제품) 옵션을 선택한 다음 "계속"버튼을 클릭하십시오.

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

3 단계 : BYO 앱에 사용할 앱 ID (앱 ID 생성 방법)를 선택한 다음 "계속"을 클릭하여 다음 단계로 이동하십시오.

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

4 단계 : "CSR (Certificate Signing Request) 작성 정보"단계에 따라 인증서 서명 요청을 작성하십시오.

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

Apple에서 제공 한 지침을 보충합니다. 필요한 단계를 완료하는 데 도움이되는 몇 가지 추가 스크린 샷이 있습니다.

4 단계 보충 스크린 샷 1 : Mac에서 Keychain Access의 인증 지원으로 이동합니다.

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

4 단계 보충 스크린 샷 2 : 인증서 정보를 입력합니다. 계속을 클릭하십시오.

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

5 단계 : 4 단계에서 생성 된 ".certSigningRequest"파일을 업로드 한 다음 "생성"버튼을 클릭하십시오.

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

6 단계 : "완료"를 클릭하여 등록을 마치면 다음 화면과 같은 iOS 프로비저닝 포털 페이지가 새로 고쳐집니다.

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

그런 다음 "다운로드"버튼을 클릭하여 지금 생성 한 인증서 (.cer 파일)를 다운로드하십시오. -다운로드 한 파일을 두 번 클릭하여 인증서를 Mac의 Keychain Access에 설치하십시오.

7 단계 : Mac에서 "키 체인"으로 이동하여 방금 설치 한 인증서를 찾으십시오. 어떤 인증서가 올바른 인증서인지 확실하지 않은 경우 "Apple Production IOS Push Services :"로 시작한 다음 앱의 번들 ID로 시작해야합니다.

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

8 단계 : 인증서를 확장하면 이름 또는 회사 이름이 포함 된 개인 키가 표시됩니다. 키보드의 "선택"키를 사용하여 두 항목을 모두 선택하고 마우스 오른쪽 버튼을 클릭하거나 (단일 버튼 마우스를 사용하는 경우 cmd- 클릭) 다음과 같이 "2 항목 내보내기"를 선택하십시오.

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

그런 다음 이름이 "pushcert.p12"인 p12 파일을 데스크탑에 저장하십시오. 이제 보호 할 비밀번호를 입력하라는 프롬프트가 표시되면 Enter를 클릭하여 비밀번호를 건너 뛰거나 원하는 비밀번호를 입력하십시오.

9 단계 : 이제 가장 어려운 부분-Mac에서 "터미널"을 열고 다음 명령을 실행하십시오.

cd
cd Desktop
openssl pkcs12 -in pushcert.p12 -out pushcert.pem -nodes -clcerts

10 단계 : 데스크탑에서 pushcert.p12를 제거하여 자체 빌드 영역으로 잘못 업로드되지 않도록합니다. Mac에서 "터미널"을 열고 다음 명령을 실행하십시오.

cd
cd Desktop
rm pushcert.p12

11 단계-신규 AWS 업데이트 : pushcert.p12AWS SNS에 제출할 신규 를 생성 합니다. new를 두 번 클릭 pushcert.pem한 다음 녹색에만 강조 표시된 것을 내보내십시오.

여기에 이미지 설명을 입력하십시오 크레딧 : AWS 새로운 업데이트

이제 Apple 푸시 알림 인증서 (.p12 파일)를 성공적으로 만들었습니다! 나중에이 파일을 Build Your Own 영역에 업로드해야합니다. :)


11
이제 키 체인에서 PEM 파일로 바로 내보낼 수 있습니다 (8-10 단계).
Kyle Clegg 1

10
@KyleClegg : 어떻게 요?
eugene

3
"나만의 빌드"영역이란 무엇이며 왜 pem 파일을 업로드해야합니까?
Rafi

1
인터넷을 통한 이러한 모든 답변이 왜 '자신 만의 빌드'가 무엇인지에 대한 실제 질문을 무시하는 이유는 무엇입니까? Xcode를 사용하는 경우이 PEM을 어디에 업로드합니까?
RobertyBob 2016 년

1
필자의 경우 p12 cert에서 두 개의 pem 파일을 만들어야했습니다. 두 항목을 함께 내보내는 대신 키 체인 액세스로 인증서와 키 파일을 각각 내 보냅니다. 그러나이 대답은 확실히 굉장합니다!
웨이

79

오늘날 훨씬 간단한 해결책이 있습니다 -pem . 이 도구는 인생을 훨씬 쉽게 만듭니다.

예를 들어, 푸시 알림 인증서를 생성하거나 갱신하려면 다음을 입력하십시오.

fastlane pem 

1 분 안에 완료되었습니다. 샌드 박스 인증서가 필요한 경우 다음을 입력하십시오.

fastlane pem --development

그리고 그것은 예쁘다.


9
그리고 PEM만이 아닙니다. 전체 fastlane 도구는 완전히 훌륭합니다
Benjamin

애플 이외의 시스템에서도 사용 가능합니까?
twicejr

@KrauseFx, pem을 통해 생성하면 어떻게 표시 됩니까? developer.apple.com/account/ios/certificate ? 최신 만료 날짜 등을 보는 데 이것이 매우 유용하다고 생각하십니까? 이것이 자동으로 발생하는 것입니까?
IonicBurger

1
@Nikola iTunes Connect에서 아무 조치도 필요하지 않습니다. 해당 pem 파일을 바로 사용할 수 있습니다
KrauseFx

1
@ mikejd 우리는 어떤 p12를 pem에 사용해야하는지 지정할 필요가 없습니까?
Maulik

10
$ cd Desktop
$ openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem

이 작동합니까? 이 방법을 사용하여 Windows 10에서 PEM 파일을 만들었지 만 생성 된 pem을 사용하여 푸시 알림을 보내면 " 'ssl : \ / \ / gateway.sandbox.push.apple.com에 연결할 수 없습니다"라는 메시지가 나타납니다.
Arivan Bastos 2016 년

3

Apple은 발급 된 인증서의 이름을 변경했습니다. 이제 개발 및 프로덕션 모두에 동일한 인증서를 사용할 수 있습니다. 여전히 개발 전용 인증서를 요청할 수는 있지만 더 이상 프로덕션 전용 인증서를 요청할 수 없습니다.

아래 screnshot을 참조하십시오


1

Cert.p12 및 key.p12를 내 보낸 후 매우 간단합니다. 'apns'.pem 파일 생성에 대한 아래 명령을 찾으십시오.

https://www.sslshopper.com/ssl-converter.html

command to create apns-dev.pem from Cert.pem and Key.pem

openssl rsa -in Key.pem -out apns-dev-key-noenc.pem

cat Cert.pem apns-dev-key-noenc.pem > apns-dev.pem

위 명령은 샌드 박스와 프로덕션 모두에 유용합니다.


1

푸시 인증서 문제 해결 에 따르면

Apple 개발자 프로그램 계정에서 사용 가능한 SSL 인증서에는 공개 키는 있지만 개인 키는 포함되어 있지 않습니다. 개인 키는 Apple에 업로드 된 인증서 서명 요청을 생성 한 Mac에만 존재합니다. PEM (Privacy Enhanced Mail) 파일을 내보내려면 공개 키와 개인 키가 필요합니다.

클라이언트가 제공 한 인증서에서 작동하는 PEM을 내보낼 수없는 이유는 개인 키가 없기 때문일 수 있습니다. 인증서에는 공개 키가 포함되어 있지만 개인 키는 원래 CSR을 만든 Mac에만있을 수 있습니다.

다음 중 하나를 수행 할 수 있습니다.

  1. 원래 CSR을 만든 Mac에서 개인 키를 가져 오십시오. PEM 내보내기는 해당 Mac에서 수행하거나 개인 키를 다른 Mac으로 복사 할 수 있습니다.

또는

  1. 새 CSR, 새 SSL 인증서를 작성하고 이번에는 개인 키를 백업하십시오.

0

감사! 위의 모든 답변에. .p12 파일이 있기를 바랍니다. 이제 터미널 쓰기 다음 명령을여십시오. 터미널을 .12 파일을 넣은 경로로 설정하십시오.

$ openssl pkcs12 -in yourCertifcate.p12 -out pemAPNSCert.pem -nodes
Enter Import Password: <Just enter your certificate password>
MAC verified OK

이제 .pem 파일이 생성되었습니다.

.pem 파일 확인 먼저 텍스트 편집기에서 .pem을 열어 내용을 봅니다. 인증서 내용은 아래와 같이 형식이어야합니다. pem 파일에 인증서 컨텐츠 (BEGIN CERTIFICATE에서 END CERTIFICATE까지)와 인증서 개인 키 (BEGIN PRIVATE KEY에서 END PRIVATE KEY)가 모두 포함되어 있는지 확인하십시오.

> Bag Attributes
>     friendlyName: Apple Push Services:<Bundle ID>
>     localKeyID: <> subject=<>
> -----BEGIN CERTIFICATE-----
> 
> <Certificate Content>
> 
> -----END CERTIFICATE----- Bag Attributes
>     friendlyName: <>
>     localKeyID: <> Key Attributes: <No Attributes>
> -----BEGIN PRIVATE KEY-----
> 
> <Certificate Private Key>
> 
> -----END PRIVATE KEY-----

또한 SSLShopper Certificate Decoder 로 이동 하여 인증서 내용 (BEGIN CERTIFICATE에서 END CERTIFICATE까지)을 붙여 인증서에 대한 모든 정보를 가져 와서 인증서 의 유효성을 확인하십시오 .

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

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.