La première étape consiste à exporter le certificat apple .cer depuis l'application "Trousseau d'accès".
Dans l'application sélectionnez l'onglet "Certificats", puis sélectionnez les deux lignes qui correspondent au certificat de notification que vous venez de créer :
Export de certificat .cer Apple |
Pour convertir ce fichier .p12 en .pem il vous faudra lancer les commandes suivantes dans Terminal :
openssl pkcs12 -clcerts -nokeys -out cert.pem -in certificat.p12Vous aurez alors un fichier .pem utilisable par exemple dans php de la façon suivante :
openssl pkcs12 -nocerts -out key_crypt.pem -in certificat.p12
openssl rsa -in key_crypt.pem -out key.pem
cat cert.pem key.pem > final.pem
<?php $streamContext = stream_context_create(); stream_context_set_option($streamContext, 'ssl', 'local_cert', self::$notificationCertificate); $connect = stream_socket_client('ssl://gateway.sandbox.push.apple.com:2195', $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext); if (!$connect) die("Impossible de se connecter : $errorString"); fwrite($connect, $contenu_notification); fclose(self::$notifConnect); ?>