TsgcQUICServer › Özellikler › QUICOptions
Zorunlu TLS sertifikası ve özel anahtar ile maksimum bağlantı sayısı dahil sunucu yapılandırması.
property QUICOptions: TsgcQUICServerOptions read FQUICOptions write SetQUICOptions;
MaxConnections=0; SSLOptions.Password=''; SSLOptions.VerifyCertificate=False; SSLOptions.OpenSSL_Options.APIVersion=oslAPI_3_0
QUIC dinleyicisine uygulanan yapılandırmayı gruplar. QUIC her zaman TLS 1.3 üzerinden çalıştığından, Start çağrılmadan önce bir sertifika ve özel anahtar zorunludur ve ayarlanmış olmalıdır. Kullanılabilir üyeler şunlardır:
SSLOptions.CertFile: PEM biçimindeki sunucu sertifikasının yolu. Zorunludur.SSLOptions.KeyFile: PEM biçiminde sertifikayla eşleşen özel anahtarın yolu. Zorunludur. Şifreli (parola korumalı) bir anahtar desteklenir; parolayı Password içinde ayarlayın.SSLOptions.Password: şifrelenmiş bir özel anahtarın parolası. Sunucu, KeyFile'ı yüklemeden önce bir OpenSSL parola geri çağırma işlevi kurar; böylece parola korumalı bir PEM anahtarı konsolda soru sorulmadan yüklenir. Şifrelenmemiş bir anahtar için boş bırakın. .NET'te aynı üye bir PFX yüklenirken de kullanılır.SSLOptions.RootCertFile: istemci sertifikası doğrulaması etkinleştirildiğinde kullanılan CA kök sertifikasının yolu. VerifyCertificate True olduğunda okunur. Boş olduğunda bunun yerine OpenSSL'in varsayılan doğrulama yolları kullanılır.SSLOptions.VerifyCertificate: True olduğunda sunucu, istemci sertifikasını ister ve doğrular. Varsayılan değer False'tur. CA güven çıpaları önce RootCertFile dosyasından yüklenir, ardından bağlam SSL_VERIFY_FAIL_IF_NO_PEER_CERT ile birlikte SSL_VERIFY_PEER olarak ayarlanır; böylece sertifika sunmayan ya da sunduğu sertifika doğrulanmayan bir istemci reddedilir.SSLOptions.OpenSSL_Options: düşük seviyeli OpenSSL ayarları; API sürümü varsayılan olarak oslAPI_3_0'dır; çünkü QUIC, OpenSSL 3.x API'sini gerektirir.SSLOptions.IOHandler: QUIC el sıkışmasının TLS motoru. Varsayılan iohOpenSSL, OpenSSL yolunu korur ve motoru otomatik seçer (bkz. QUICMode). iohNativeTLS, TLS 1.3 el sıkışmasını sgcCrypto paketinin yerel TLS motoru üzerinde çalıştırır ve her zaman sgc QUIC motorunu (QUICMode = qmCustom) kullanır. Sertifika PEM veya PFX'ten okunur, istemci sertifikaları RootCertFile'a veya sistem köklerine karşı doğrulanır. Oturum biletleri, sürdürme ve 0-RTT OpenSSL'deki gibi çalışır. QUIC paket koruması da yereldir, bu yüzden OpenSSL hiç yüklenmez.MaxConnections: maksimum eş zamanlı bağlantı sayısı; 0 (varsayılan) sınırsız anlamına gelir. Sınıra ulaşıldığında yeni bağlantılar reddedilir.
oServer := TsgcQUICServer.Create(nil);
oServer.Port := 4433;
oServer.QUICOptions.SSLOptions.CertFile := 'cert.pem';
oServer.QUICOptions.SSLOptions.KeyFile := 'key.pem';
oServer.QUICOptions.MaxConnections := 1000;
oServer.Start;