Apple Push Notifications - APNs ile Sertifika Tabanlı Bağlantılar (Bölüm 4/4)

· Özellikler

Apple Push Notifications hakkındaki en son blog girdisinde, Apple Push Sunucularına karşı kimlik doğrulaması yapmak için sertifikaların nasıl kullanılacağını gösteriyorum.

Önce geliştirici hesabınıza girin ve Apple Push Notification service için yeni bir sertifika oluşturun

Sertifikanızı indirdikten sonra, sgcWebSockets HTTP/2 istemcisi 2 güvenlik IOHandler'ı kullanmaya olanak tanır (yalnızca windows için, diğer kişilikler için yalnızca openSSL desteklenir).

OpenSSL 

openSSL kullanıyorsanız, openSSL kütüphanelerini uygulamanızla birlikte dağıtmalısınız. Sertifikayı TsgcHTTP2Client ile ayarlamadan önce, openSSL P12 sertifikalarını doğrudan içe aktarmaya izin vermediği için bu sertifikanın önce PEM biçimine dönüştürülmesi gerekir.

Tek bir P12 sertifikasını PEM biçiminde bir sertifikaya ve bir özel anahtar dosyasına dönüştürmek için aşağıdaki komutları kullanın

PEM sertifika dosyası oluşturun

 openssl pkcs12 -in INFILE.p12 -out OUTFILE.crt -nokeys


Özel Anahtar dosyası oluşturun

 openssl pkcs12 -in INFILE.p12 -out OUTFILE.key -nodes -nocerts


Sertifikanız ve özel anahtarınız PEM biçiminde olduğunda, TsgcHTTP2Client'i aşağıdaki gibi yapılandırabilirsiniz.

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 

SChannel kullanırsanız herhangi bir kütüphane dağıtmaya gerek yoktur ve Apple'dan indirilen sertifika, önceden PEM biçimine dönüştürülmeye gerek kalmadan doğrudan içe aktarılabilir.

oHTTP := TsgcHTTP2Client.Create(nil);
oHTTP.TLSOptions.IOHandler := iohSChannel;
oHTTP.TLSOptions.CertFile := 'certificate_file.p12';
oHTTP.TLSOptions.Password := 'certificate password';
oHTTP.TLSOptions.Version := tls1_2;