AWS CLI를 사용하여 Amazon SNS에서 푸시 알림을 전송하기 위한 APN 플랫폼 애플리케이션을 생성하려면 어떻게 해야 합니까?

3분 분량
0

푸시 알림을 전송하기 위해 Amazon Simple Notification Service(SNS)에서 Apple Push Notification Service(APN) 플랫폼 애플리케이션을 생성하려고 합니다. Amazon SNS 콘솔 대신 AWS Command Line Interface(AWS CLI)를 사용하여 APN 플랫폼 애플리케이션을 생성하려면 어떻게 해야 합니까?

간략한 설명

AWS CLI를 사용하여 Amazon SNS에서 APN 플랫폼 애플리케이션을 생성하려면 create-platform-application 명령을 실행합니다.

자세한 내용은 Amazon SNS API 참조의 CreatePlatformApplication을 참조하세요.

참고: Amazon SNS 콘솔에서 플랫폼 애플리케이션을 생성할 수도 있습니다.

해결 방법

참고: 일부 AWS 리전에서는 Amazon SNS 푸시 알림을 사용할 수 없습니다. 자세한 내용은 모바일 애플리케이션이 지원되는 리전을 참조하세요. AWS CLI 명령을 실행할 때 오류가 발생하는 경우 최신 버전의 AWS CLI를 사용하고 있는지 확인합니다.

사전 요구 사항

iOS, VoIP 또는 MacOS에 유효한 애플리케이션이 있어야 합니다. 또한 애플리케이션의 인증 방법에 따라 Apple Developer 계정에서 다음 리소스를 확보해야 합니다.

인증서 기반 인증의 경우

  • 유효한 TLS 인증서

토큰 기반 인증의 경우

  • 유효한 토큰 서명 키
  • 유효한 Apple 팀 ID
  • 유효한 Apple 번들 ID

자세한 내용은 Amazon SNS 개발자 안내서의 Amazon SNS 사용자 알림 사전 요구 사항Apple 인증 방법을 참조하세요.

AWS CLI를 사용하여 Amazon SNS에서 APN 플랫폼 애플리케이션을 생성하려면

인증서 기반 인증의 경우

1.    다음 명령을 실행합니다.

중요: Your_Application_Name을 사용자의 애플리케이션 이름으로 바꿉니다. Certificates.p12를 사용자의 PKCS#12 파일로 바꿉니다. 사용 사례에 따라 platform 값을 APNS_SANDBOX 또는 APNS로 바꿉니다. PKCS#12 파일이 있는 디렉터리와 동일한 디렉터리에서 명령을 실행해야 합니다.

aws sns create-platform-application --name Your_Application_Name --platform APNS_SANDBOX --attributes PlatformCredential="\"$(openssl pkcs12 -in Certificates.p12 -nodes -nocerts)\"",PlatformPrincipal="\"$(openssl pkcs12 -in Certificates.p12 -nodes -nokeys)\""

참고: 인증서 자격 증명을 사용하는 Apple 서비스의 경우 PlatformCredential은 프라이빗 키입니다. PlatformPrincipal은 SSL 인증서입니다. OpenSSL pkcs12 명령은 인증서 기반 인증을 위해 PKCS#12 파일을 읽을 수 있는 형식으로 구문 분석합니다. 자세한 내용은 OpenSSL 웹 사이트에서 pkcs12를 참조하세요.

가져오기 암호 값을 입력하라는 메시지가 나타납니다.

2.    가져오기 암호에는 키체인 액세스 앱에서 PKCS#12 파일을 내보낼 때 생성된 암호를 입력합니다.

토큰 기반 인증의 경우

다음 명령을 실행합니다.

중요: PlatformCredential을 사용자의 토큰 서명 키로 바꿉니다. PlatformPrincipal을 사용자의 토큰 서명 키 ID로 바꿉니다. ApplePlatformTeamID를 사용자의 Apple 팀 ID로 바꿉니다. ApplePlatformBundleID를 사용자의 Apple 번들 ID로 바꿉니다. 사용 사례에 따라 platform 값을 APNS_SANDBOX 또는 APNS로 바꿉니다. Token.p8을 사용자의 PKCS#8 파일로 바꿉니다. PKCS#8 파일이 있는 디렉터리와 동일한 디렉터리에서 명령을 실행해야 합니다.

aws sns create-platform-application --name token --platform APNS_SANDBOX --attributes ApplePlatformTeamID=XXXXXXX,ApplePlatformBundleID=com.XXXXX,PlatformPrincipal=XXXXXXX,PlatformCredential="\"$(openssl pkcs8 -in Token.p8 -nocrypt)\""

참고: 토큰 보안 인증을 사용하는 Apple 서비스의 경우 PlatformCredential은 토큰 서명 키입니다. PlatformPrincipal은 토큰 서명 키 ID입니다. OpenSSL pkcs8 명령은 PKCS#8 형식의 프라이빗 키를 처리해서 토큰 기반 인증을 위해 읽을 수 있는 형식으로 구문 분석합니다. 자세한 내용은 OpenSSL 웹 사이트의 pkcs8을 참조하세요.

플랫폼 속성에 대한 자세한 내용은 Amazon SNS API 참조의 SeePlatformApplicationAttributes를 참조하세요.


관련 정보

모바일 푸시 API 오류

모바일 앱 설정

모바일 푸시 API 작업