TsgcHTTP3Server › Eigenschaften › QUICOptions

QUICOptions Eigenschaft

QUIC-Transportoptionen, einschließlich des TLS 1.3-Zertifikats, des privaten Schlüssels und der Verbindungslimits.

Syntax

property QUICOptions: TsgcQUICServerOptions;

Typ

TsgcQUICServerOptions

Hinweise

— (ein Unterobjekt, das mit der Komponente erstellt wird; siehe die Standardwerte der Member weiter unten)

Hinweise

QUICOptions konfiguriert den zugrunde liegenden QUIC-Transport. QUIC verwendet immer TLS 1.3, es gibt keinen Klartextmodus, daher sind ein Zertifikat und ein passender privater Schlüssel zwingend erforderlich, bevor der Server starten kann. Eine Zuweisung an QUICOptions kopiert die Member des Quellobjekts, statt das Objekt zu ersetzen.

MemberTypHinweiseBeschreibung
SSLOptions.CertFilestringemptyPfad zur Server-Zertifikatsdatei im PEM-Format. Erforderlich.
SSLOptions.KeyFilestringemptyPfad zur Datei mit dem privaten Schlüssel im PEM-Format, die zum Zertifikat passt. Erforderlich.
SSLOptions.PasswordstringemptyPassphrase für einen verschlüsselten privaten Schlüssel. Der Server installiert einen OpenSSL-Passwort-Callback, bevor er KeyFile lädt, sodass ein passphrasengeschützter PEM-Schlüssel ohne Eingabeaufforderung auf der Konsole geladen wird. Lassen Sie das Feld für einen unverschlüsselten Schlüssel leer.
SSLOptions.RootCertFilestringemptyPfad zur CA-Stammzertifikatsdatei, die beim Überprüfen von Client-Zertifikaten verwendet wird.
SSLOptions.VerifyCertificateBooleanFalseBei True wird ein Client-Zertifikat angefordert und validiert (mutual TLS).
SSLOptions.OpenSSL_OptionsTsgcOpenSSLClient_OptionsAPI-Version oslAPI_3_0Wie die OpenSSL-Bibliotheken gefunden und geladen werden, zum Beispiel der Bibliothekspfad und die API-Version.
SSLOptions.IOHandlerTwsTLSIOHandleriohOpenSSLTLS-Engine des QUIC-Handshakes. iohOpenSSL behält den OpenSSL-Pfad bei, bei dem die Engine automatisch gewählt wird (siehe QUICMode). iohNativeTLS führt den TLS-1.3-Handshake auf der nativen TLS-Engine des sgcCrypto-Packs aus und verwendet immer die sgc-QUIC-Engine. Session-Tickets, Wiederaufnahme und 0-RTT funktionieren wie bei OpenSSL. Der QUIC-Paketschutz ist ebenfalls nativ, sodass OpenSSL überhaupt nicht geladen wird.
MaxConnectionsInteger0Maximale Anzahl gleichzeitiger QUIC-Verbindungen. 0 bedeutet unbegrenzt.

Das Zertifikat und der Schlüssel werden von OpenSSL geladen, wenn Start aufgerufen wird, sodass ein falscher Pfad, ein nicht zusammenpassendes Paar oder ein nicht lesbarer Schlüssel zu diesem Zeitpunkt als Ausnahme auftritt und nicht beim Zuweisen der Eigenschaften. Das Zertifikat wird für jede Verbindung präsentiert und Clients validieren es genau so, wie sie es bei einem HTTPS-Zertifikat tun würden, sodass ein selbstsigniertes Zertifikat nur mit Clients funktioniert, die so konfiguriert sind, dass sie ihm vertrauen.

Diese Optionen gehören zum Transport, sie werden daher beim Erstellen des Listeners gelesen. Weisen Sie sie zu, bevor Sie den Server starten; eine Änderung an einem laufenden Server hat keine Wirkung, bis dieser gestoppt und erneut gestartet wird.

Diese Eigenschaft wird von TsgcQUICServer geerbt.

Dieses Member ist derzeit nur in der Delphi/C++Builder-Implementierung verfügbar. Die .NET-Implementierung hat kein QUIC-Optionsobjekt: Sie konfiguriert ihr Zertifikat stattdessen über die Eigenschaft TLSOptions.

Beispiel


oServer.QUICOptions.SSLOptions.CertFile := 'cert.pem';
oServer.QUICOptions.SSLOptions.KeyFile := 'key.pem';
oServer.QUICOptions.MaxConnections := 1000;

Zurück zu Properties