TsgcWebSocketLoadBalancerServer › イベント › OnSSLAfterCreateHandler
ロードバランサーが SSL ハンドラーを作成した後、TLS ハンドシェイク前にプロパティをカスタマイズできるようにするために発火します。
property OnSSLAfterCreateHandler: TsgcWSOnSSLAfterCreateHandler;
// TsgcWSOnSSLAfterCreateHandler = procedure(Sender: TObject; aType: TwsSSLHandler; aSSLHandler: TIdSSLIOHandlerSocketBase) of object
—
OnSSLGetHandler がカスタム SSL ハンドラーを提供しない場合、ロードバランサーは選択された IOHandler に応じてデフォルトのハンドラー(OpenSSL または SChannel)を作成し、OnSSLAfterCreateHandler を発生させてアプリケーションがプロパティを調整できるようにします。例えば、特定の TLS メソッドの強制、追加の OpenSSL オプションの設定、またはセッションキャッシュの調整などが可能です。aType パラメータはビルドされたハンドラーの種類を報告し、aSSLHandler は実際に TLS ハンドシェイクを実行するインスタンスです。イベントはハンドラーを所有しないため、ハンドラーコードで解放してはなりません。
procedure OnSSLAfterCreateHandler(Sender: TObject; aType: TwsSSLHandler;
aSSLHandler: TIdSSLIOHandlerSocketBase);
begin
TIdServerIOHandlerSSLOpenSSL(aSSLHandler).SSLOptions.Method := sslvTLSv1_2;
end;