TsgcWebSocketServer_HTTPAPI › Métodos › ReloadCertificates

ReloadCertificates Método

Refaz o binding do certificado TLS renovado dos bindings SSL do HTTP.sys sem parar o servidor; as conexões estabelecidas não são afetadas.

Sintaxe

procedure ReloadCertificates;

Observações

Chame ReloadCertificates após a renovação de um certificado (por exemplo, uma renovação ACME ou Let's Encrypt) para instalar o novo certificado sem reiniciar. Atribua o novo SSLOptions.Hash (e CertStoreName, se o certificado estiver em outro repositório) e, em seguida, chame ReloadCertificates. Ele pode ser chamado a partir de qualquer thread enquanto o servidor estiver ativo. Se o servidor não estiver ativo, ou se o SSL estiver desabilitado, a chamada não faz nada. Quando BindingOptions.ConfigureSSLCertificate é True (o padrão), ReloadCertificates refaz o binding do certificado de cada binding SSL de forma atômica nos casos em que o Windows oferece suporte. Ele exige os mesmos direitos de administrador necessários para iniciar o servidor com SSL. As conexões estabelecidas não são afetadas e os novos handshakes TLS usam o novo certificado. Se o novo certificado não puder ser vinculado, uma exceção é gerada e o servidor continua servindo o certificado anterior. Quando ConfigureSSLCertificate é False, o binding é gerenciado fora do componente (netsh); portanto, ReloadCertificates gera uma exceção e o binding deve ser atualizado com netsh. No .NET, o servidor http.sys é executado sobre HttpListener, que não pode revincular o certificado: o binding é sempre gerenciado com netsh, portanto, enquanto o servidor estiver ativo com https, ReloadCertificates gera NotSupportedException e o certificado deve ser renovado com netsh http update sslcert. Consulte Conexões Seguras.

Exemplo


procedure TForm1.RenewCertificate;
begin
  try
    oServer.SSLOptions.Hash := 'A1B2C3D4E5F60718293A4B5C6D7E8F9012345678';
    oServer.ReloadCertificates;
  except
    on E: Exception do
      ShowMessage('Certificate reload failed: ' + E.Message);
  end;
end;

Voltar para Métodos