У меня много проблем с настройкой схемы сертификата X509 в C # .NET.На сервере включена поддержка SSL, а соединение осуществляется через SSL.Сертификаты добавляются в хранилище запроса через request.ClientCertificates.Add()
.Тем не менее, к запросу на рукопожатие не прикреплен ни один клиентский сертификат (который я подтверждаю, проверяя код сервера через HttpRequest.ClientCertificate
и анализируя рукопожатие в Fiddler).проблема здесь в том, что сервер не запрашивает сертификат клиента.Сертификаты определенно находятся в исходящем запросе, но я не вижу ни одного на рукопожатии и ни одного на стороне сервера - они просто исчезают в эфире.Мне известна семантика выбора сертификата (спасибо этой странице ), но это не решило мою проблему.CA должны быть одинаковыми;Я использую один и тот же самозаверяющий защищенный сертификат с закрытым ключом для каждого конца теста.
Я могу использовать certutil.exe, чтобы проверить, какие сертификаты будут выбраны при использовании с данным сертификатом сервера.Это было бы огромной помощью, если бы я мог понять, как использовать это так.Certutil - большая программа, которая плохо документирована.Любая помощь будет оценена.