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\myThumbprint 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>';
