En la última entrada del blog sobre Apple Push Notifications, te muestro cómo usar certificados para autenticarte contra los servidores de Apple Push.
Primero entra en tu cuenta de desarrollador y crea un nuevo certificado para el servicio Apple Push Notification
Una vez que hayas descargado tu certificado, el cliente HTTP/2 de sgcWebSockets permite usar 2 IOHandlers de seguridad (solo en Windows; para otras personalities solo se soporta openSSL).
- OpenSSL
- SChannel (solo en Windows)
OpenSSL
Si usas openSSL, debes desplegar las librerÃas openSSL con tu aplicación. Antes de establecer el certificado con TsgcHTTP2Client, primero debes convertir el certificado a formato PEM, porque openSSL no permite importar certificados P12 directamente.
Usa los siguientes comandos para convertir un único certificado P12 a un certificado en formato PEM y un archivo de clave privada
crear el archivo de certificado PEM
openssl pkcs12 -in INFILE.p12 -out OUTFILE.crt -nokeysCrear archivo de clave privada
openssl pkcs12 -in INFILE.p12 -out OUTFILE.key -nodes -nocertsUna vez que tengas tu certificado y clave privada en formato PEM, puedes configurar TsgcHTTP2Client asÃ.
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
Si usas SChannel no es necesario desplegar ninguna librerÃa, y el certificado descargado de Apple puede importarse directamente sin necesidad de una conversión previa a formato PEM.
oHTTP := TsgcHTTP2Client.Create(nil); oHTTP.TLSOptions.IOHandler := iohSChannel; oHTTP.TLSOptions.CertFile := 'certificate_file.p12'; oHTTP.TLSOptions.Password := 'certificate password'; oHTTP.TLSOptions.Version := tls1_2;
