#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)