Вызов службы сокетов c # из JavaScript с помощью security WebSocket (wss)

#javascript #c# #websocket #tcpclient

#javascript #c# #websocket #tcpclient

Вопрос:

в JavaScript я вызываю локальную службу Windows TcpClient (c #)

 var url = 'wss://127.0.0.1:6372';
var oWebSocket = new WebSocket(url); // error
  

на сервере

 serverCertificate = new X509Certificate2(certificate, "pwd");
TcpListener listener = new TcpListener(IPAddress.Parse(ip), port);
listener.Start();
while (true)
{
     Console.WriteLine("Waiting for a client to connect...");
     TcpClient client = listener.AcceptTcpClient();
     ProcessClientS(client);
}

static void ProcessClientS(TcpClient client)
{
      SslStream sslStream = new SslStream(client.GetStream(), false);
      // Authenticate the server but don't require the client to authenticate.
      try
      {
         sslStream.AuthenticateAsServer(serverCertificate, false, SslProtocols.Tls12, true); //error line
  

на стороне сервера я получаю сообщение «Сбой вызова SSPI, см. Внутреннее исключение». и «Произошла неизвестная ошибка при обработке сертификата»
на стороне клиента я получаю » Ошибка при установлении соединения: net ::ERR_CERT_COMMON_NAME_INVALID»

Как я могу передать локальный сертификат на свой сервер

Комментарии:

1. ваш ssl-сертификат недействителен

2. да, это так. CN = Центр сертификации COMODO RSA

3. не соответствует ошибке

4. SslStream SslStream = новый SslStream(клиент. GetStream(), false, new RemoteCertificateValidationCallback(ValidateServerCertificate));

5. общедоступный статический сервер проверки подлинности bool (отправитель объекта, сертификат X509Certificate, цепочка X509Chain, sslPolicyErrors sslPolicyErrors)