문제

.NET 클라이언트가 Windows KeyStore를 관여하지 않고 클라이언트 인증서를 사용하는 방법이 있는지 알아 내려고합니다.

다음과 같은 코드 스 니펫이 있습니다.

test1.Service s = new test1.Service();
X509Certificate c = X509Certificate.CreateFromCertFile(@"C:\test.pem");
s.ClientCertificates.Add(c);
int result = s.TestMethod();

그러나 이것은 인증서 저장소에 "test.pem"에 인증서를 참조 한 경우에만 작동합니다. 나는 이것이 협상에 열쇠가 필요하기 때문이라고 생각합니다. 상점에 Cert/Key가없는 경우, 인증서는 요청과 함께 전송되지 않습니다.

내가하고 싶은 것은 파일 또는 파일에서 인증서와 개인 키를 모두 제공 할 수 있으며 Windows 인증서 저장소와 관련이 없습니다.

이것을 할 방법이 있습니까?

도움이 되었습니까?

해결책

나는 내 자신의 게시물에 대한 답을 게시 할 것이지만 다른 사람들이 다른 것을 해결할 수 있는지 확인하기 위해 열어 두겠습니다.

기본적으로 저는 펀칭하고 있습니다. PKCS12 파일 (키와 Cert가 모두 포함 된)이있는 경우 X509Certificate2 클래스를 사용하여 해당 파일을로드하여 사용하여 KeyStore를 심문하지 않습니다.

플랫 PEM 키 및 CERT 파일 (예 : Python에서 필요한 것과 같은) 으로이 작업을 수행 할 수있는 방법을 찾을 수 없었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top