In het laatste blog-artikel over Apple Push Notifications laat ik zien hoe je certificaten gebruikt om te authenticeren bij de Apple Push Servers.
Ga eerst naar je developer-account en maak een nieuw certificaat aan voor de Apple Push Notification-service.
Zodra je je certificaat hebt gedownload, kun je met de sgcWebSockets HTTP/2-client 2 beveiligings-IOHandlers gebruiken (alleen voor Windows; voor andere platforms wordt alleen OpenSSL ondersteund).
- OpenSSL
- SChannel (alleen voor Windows)
OpenSSL
Als je OpenSSL gebruikt, moet je de OpenSSL-bibliotheken bij je toepassing meeleveren. Voordat je het certificaat instelt met de TsgcHTTP2Client, moet dit certificaat eerst worden omgezet naar PEM-formaat, omdat OpenSSL P12-certificaten niet direct kan importeren.
Gebruik de volgende commando's om één P12-certificaat te converteren naar een certificaat in PEM-formaat en een private-key-bestand.
Maak een PEM-certificaatbestand
openssl pkcs12 -in INFILE.p12 -out OUTFILE.crt -nokeysMaak een private-key-bestand
openssl pkcs12 -in INFILE.p12 -out OUTFILE.key -nodes -nocertsZodra je het certificaat en de private key in PEM-formaat hebt, kun je de TsgcHTTP2Client als volgt configureren.
oHTTP := TsgcHTTP2Client.Create(nil); oHTTP.TLSOptions.IOHandler := iohOpenSSL; oHTTP.TLSOptions.CertFile := 'certificate_file.pem'; oHTTP.TLSOptions.KeyFile := 'private_key.pem'; oHTTP.TLSOptions.Password := 'certificate password'; oHTTP.TLSOptions.Version := tls1_2;
SChannel
Als je SChannel gebruikt, hoef je geen bibliotheken mee te leveren en kan het van Apple gedownloade certificaat direct worden geïmporteerd zonder eerst naar PEM-formaat te converteren.
oHTTP := TsgcHTTP2Client.Create(nil); oHTTP.TLSOptions.IOHandler := iohSChannel; oHTTP.TLSOptions.CertFile := 'certificate_file.p12'; oHTTP.TLSOptions.Password := 'certificate password'; oHTTP.TLSOptions.Version := tls1_2;
