TsgcHTTP3Server › 属性 › QUICOptions
QUIC 传输选项,包括证书、私钥和连接限制。
property QUICOptions: TsgcQUICServerOptions;
—
QUICOptions 配置底层 QUIC 传输。由于 QUIC 强制要求 TLS 1.3,服务器启动前需要提供证书和匹配的私钥。该选项对象提供:
| Member | 类型 | 描述 |
|---|---|---|
SSLOptions.CertFile | string | PEM 格式服务器证书文件的路径。必填。 |
SSLOptions.KeyFile | string | 与证书匹配的私钥文件的路径,PEM 格式。必填。 |
SSLOptions.Password | string | 加密私钥的口令。服务器会在加载 KeyFile 之前安装 OpenSSL 口令回调,因此受口令保护的 PEM 密钥无需在控制台提示即可加载。未加密的密钥请留空。 |
SSLOptions.RootCertFile | string | CA 根证书文件的路径,用于验证客户端证书时使用。 |
SSLOptions.VerifyCertificate | Boolean | 为 True 时,请求并验证客户端证书。 |
SSLOptions.IOHandler | TwsTLSIOHandler | QUIC 握手所使用的 TLS 引擎,默认 iohOpenSSL。iohOpenSSL 保留 OpenSSL 路径,引擎会自动选择(参阅 QUICMode)。iohNativeTLS 让 TLS 1.3 握手运行在 sgcCrypto 包的原生 TLS 引擎上,并始终使用 sgc QUIC 引擎。会话票据、会话恢复和 0-RTT 的工作方式与 OpenSSL 相同。QUIC 报文保护同样是原生的,因此完全不加载 OpenSSL。 |
MaxConnections | Integer | 同时 QUIC 连接的最大数量;0 表示无限制。 |
调用 Start 时,OpenSSL 会加载证书和密钥;若任一缺失或不匹配,Start 将引发异常。
oServer.QUICOptions.SSLOptions.CertFile := 'cert.pem';
oServer.QUICOptions.SSLOptions.KeyFile := 'key.pem';
oServer.QUICOptions.MaxConnections := 1000;