2016-12-05 25 views
0

我想用C#構建自己的安全(非http)服務器。當然,我正在使用SslStream和AuthenticateAsServer。這就像一個冠軍,除了我不知道如何讓服務器作爲客戶端證書請求的一部分向客戶端發送證書信任列表(CTL)。如何告訴C#SslStream AuthenticateAsServer發送證書信任列表(CTL)

我看到LocalCertificateSelectionCallback,但這隻適用於AuthenticateAsClient,因爲AcceptedIssuers列表傳遞給回調函數,而不是您可以以某種方式指定它。

我看到如何在IIS中設置CTL,但不是在C#代碼中。我正在使用原始套接字(使用TLS加密),所以我不能只使用IIS來承載此服務。

回答

0

終於想通了這一點:

創建在HKEY_LOCAL_MACHINE \ SYSTEM一個DWORD值\ CURRENTCONTROLSET \控制\ SecurityProviders \ SCHANNEL 稱爲 「SendTrustedIssuerList」,並設置爲 「1」