SChannel Sertifikaları

· Özellikler

sgcWebSockets 4.4.7 sürümünden itibaren, kripto kütüphanesi olarak SChannel kullanarak Sertifikaların kullanımı desteklenir.

SChannel uygulaması 2 tür sertifika kimlik doğrulamasını destekler:

1. Bir PFX sertifikası kullanma

2. Windows sisteminde zaten yüklü bir sertifikanın Hash Thumbprint değerini ayarlama.

PFX Sertifikası 

PFX Sertifikası, sertifikayı ve özel anahtarı içeren bir dosyadır; bazen PEM biçiminde bir sertifikanız olur, bu nedenle kullanmadan önce PFX'e dönüştürmeniz gerekir.

Bir PEM sertifikasını PFX'e dönüştürmek için aşağıdaki openssl komutunu kullanın

openssl pkcs12 -inkey certificate-pem.key -in certificate-pem.crt -export -out certificate.pfx

Sertifika PFX biçimine sahip olduğunda, yalnızca sertifikayı dağıtmanız ve TLSOptions.Certificate özelliğinde sertifikaya giden yolu ayarlamanız gerekir.

 

TLSOptions.IOHandler := iohSChannel;
TLSOptions.CertFile := '<certificate path>';
TLSOptions.Password := '<certificate optional password>'; 

Hash Thumbprint

Sertifika Windows sertifika deposunda zaten yüklüyse, yalnızca sertifika thumbprint değerini bilmeniz ve bunu TLSOptions.SChannel_Options özelliğinde ayarlamanız gerekir.

Bir sertifikanın hash değerini bulmak powershell içinde, sertifikaların bulunduğu kapsayıcıda bir dir komutu çalıştırmak kadar kolaydır.

dir cert:\localmachine\my

Hash, onaltılık Thumbprint değeridir.

Directory: Microsoft.PowerShell.Security\Certificate::localmachine\my
Thumbprint Subject
---------- -------
C12A8FC8AE668F866B48F23E753C93D357E9BE10 CN=*.mydomain.com

Thumbprint değerine sahip olduğunuzda, TLSOptions.SChannel_Options özelliğinde hash değerini ve sertifikanın nerede bulunduğunu ayarlamanız gerekir.

TLSOptions.IOHandler := iohSChannel;
TLSOptions.SChannel_Options.CertHash := '<certificate thumbprint>';
TLSOptions.SChannel_Options.CertStoreName := '<certificate store name>';
TLSOptions.SChannel_Options.CertStorePath := '<certificate store path>';
TLSOptions.Password := '<certificate optional password>';