Я пытаюсь выяснить, есть ли способ, чтобы клиент .NET использовал сертификат клиента без какого-либо участия хранилища ключей Windows.
У меня есть такой фрагмент кода:
test1.Service s = new test1.Service();
X509Certificate c = X509Certificate.CreateFromCertFile(@"C:\test.pem");
s.ClientCertificates.Add(c);
int result = s.TestMethod();
Однако это работает, только если у меня также есть сертификат, указанный в "test.pem", установленный в моем хранилище сертификатов. Я предполагаю, что это потому, что ключ необходим для переговоров. Если у меня нет сертификата / ключа в магазине, сертификат не отправляется с запросом.
Я хочу предоставить сертификат и закрытый ключ из файла или файлов и никоим образом не использовать хранилище сертификатов Windows.
Есть ли способ сделать это?