TsgcWebSocketHTTPServer › Propriedades › SSLOptions
Mantém os caminhos de certificado, a seleção de versão TLS e o ajuste OpenSSL para o listener TLS.
property SSLOptions: TsgcWSSSL_Options read FSSLOptions write SetSSLOptions;
Version=tlsUndefined, VerifyCertificate=False
Forneça o material de certificado antes de ativar o servidor quando SSL for True: RootCertFile, CertFile e KeyFile apontam para arquivos PEM (utilize o mesmo caminho para os três quando o arquivo contiver a cadeia completa), e Password é necessária apenas se a chave privada estiver criptografada. Defina VerifyCertificate como True para solicitar e validar certificados de cliente (as subopções FailIfNoCertificate e VerifyClientOnce refinam a verificação) com VerifyDepth controlando o comprimento da cadeia. Version seleciona uma versão TLS específica (tls1_0, tls1_1, tls1_2, tls1_3) ou deixa a negociação aberta (tlsUndefined). OpenSSL_Options expõe ajustes de baixo nível: APIVersion (oslAPI_1_0/oslAPI_1_1/oslAPI_3_0), LibPath/LibPathCustom para localizar os binários OpenSSL, UnixSymLinks, ECDHE, CipherList, CurveList, MinVersion e X509Checks para validação de hostname/IP.
oServer := TsgcWebSocketHTTPServer.Create(nil);
oServer.SSL := true;
oServer.SSLOptions.CertFile := 'c:\certificates\mycert.pem';
oServer.SSLOptions.KeyFile := 'c:\certificates\mycert.pem';
oServer.SSLOptions.RootCertFile := 'c:\certificates\mycert.pem';
oServer.SSLOptions.Version := tls1_3;
oServer.SSLOptions.OpenSSL_Options.MinVersion := tls1_2;
oServer.SSLOptions.Port := 443;
oServer.Active := true;