Форум КриптоПро
»
Общие вопросы
»
Общие вопросы
»
Реализация TLS с использование .NET 6
Статус: Новичок
Группы: Участники
Зарегистрирован: 07.11.2022(UTC) Сообщений: 3 
|
Добрый день! Реализую TLS соединение с использованием .NET 6 Данный код на Windows отрабатывает. Сертификат находит, требует ввода пароля при обращении к сайту и сайт возвращает корректный ответ. На Linux код отрабатывает частично. Сертификат находит, но подтверждения при обращении к сайту не просит, связь между открытой частью и закрытой не устанавливает по итогу ошибка ssl соединения. Подскажите, пожалуйста, в чем может быть загвоздка? Код:
private static async Task Main(string[] args)
{
var tt = FindCerts("40601d207ee44d9cc1679597635ff8d7").First();
var handler = new HttpClientHandler
{
ClientCertificateOptions = ClientCertificateOption.Manual,
SslProtocols = SslProtocols.Tls12
};
handler.CheckCertificateRevocationList = false;
handler.ClientCertificates.Add(tt);
var client = new HttpClient(handler);
handler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) =>
{
return true;
};
var result = await client.GetAsync("");
var rescont = await result.Content.ReadAsStringAsync();
Console.WriteLine(result.StatusCode);
Console.WriteLine();
Console.WriteLine(rescont);
}
public static X509Certificate2Collection FindCerts(string serialNumber)
{
foreach (var storeLoc in new StoreLocation[] { StoreLocation.CurrentUser })
{
foreach (var store in new string[] { "uMy", "mMy", "My", "umy", "mmy", "my", "mroot", "uroot", "root", "mRoot", "uRoot", "Root", })
{
var searchType = X509FindType.FindBySerialNumber;
var certificatesStore = new X509Store(store, storeLoc);
certificatesStore.Open(OpenFlags.ReadOnly | OpenFlags.IncludeArchived);
var matchingCertificates = certificatesStore.Certificates.Find(searchType, serialNumber, false);
if (matchingCertificates.Any())
{
return matchingCertificates;
}
certificatesStore.Close();
}
}
return null;
}
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,512   Сказал «Спасибо»: 554 раз Поблагодарили: 2251 раз в 1756 постах
|
Здравствуйте. Покажите вывод certmgr для нужного хранилища, есть ссылка на контейнер у сертификата? Цитата: var store in new string[]
а если по ошибке сертификат будет добавлен не в то хранилище и без ссылки на контейнер, как поведёт себя код? |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 07.11.2022(UTC) Сообщений: 3 
|
Цитата:Покажите вывод certmgr для нужного хранилища Можете дать ссылку/инструкцию для предоставления ответа?Цитата:есть ссылка на контейнер у сертификата? Как это проверить, где посмотреть?Цитата:а если по ошибке сертификат будет добавлен не в то хранилище и без ссылки на контейнер, как поведёт себя код? На данный момент не предусмотрен данный сценарий.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,512   Сказал «Спасибо»: 554 раз Поблагодарили: 2251 раз в 1756 постах
|
под пользователем, от которого работает код:
/opt/cprocsp/bin/amd64/certmgr -list -cert -store uMy
/opt/cprocsp/bin/amd64/certmgr -list -cert -store uCa
/opt/cprocsp/bin/amd64/certmgr -list -cert -store uRoot
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 07.11.2022(UTC) Сообщений: 3 
|
Прикладываю файлы.  uCa.txt (11kb) загружен 3 раз(а). uMy.txt (2kb) загружен 4 раз(а). uRoot.txt (10kb) загружен 1 раз(а).
|
|
|
|
Форум КриптоПро
»
Общие вопросы
»
Общие вопросы
»
Реализация TLS с использование .NET 6
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close