2009-04-03 7 views
0

클라이언트에 고객 세부 사항을 보내기 위해 내 서버에 SSL을 추가하려고합니다.디지털 인증서가 올바르지 않습니다.

디지털 인증서 (.pfx)가 성공적으로로드되어 서버 쪽에서 작동하는 것처럼 보입니다.

문제는 클라이언트와 연결하려고 할 때 발생합니다. 원격 인증서가 유효하지 않다는 것을 나타내는 AuthenticationException이 발생합니다. 인증서는 자체 서명 테스트 인증서입니다. 이것이 문제가 될 수 있습니까?

그렇지 않은 경우 아이디어가 없습니다.

EDIT : 인증서가 양면의 MMC에있는 신뢰할 수있는 루트 인증서 폴더에 있습니다 (서버와 클라이언트가 동일한 컴퓨터에서 실행되기 때문에 개발 목적으로).

답변

2

내가 검증 방법을 무시 했어 : 그래서 인증서의 해시를 사용하여 확인해야합니다 분명히

public static bool RemoteCertificateValidationCallback(Object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) 
{ 
    return true; 
} 

이 전달 된 모든 인증서를 받아 들일 것 또는 비슷한 것. 그러나 지금은 휴일입니다!

1

가장 확실하게 문제가 될 수 있습니다. 해당 웹 서버를 클라이언트의 신뢰할 수있는 루트 인증서에 추가하려고 했습니까? 클라이언트가 인증서 공급자 (자체 서명 이후 웹 서버)를 신뢰하지 않으면 인증서를 인증하려고 시도 할 때 예외가 발생합니다.

0

인증서를 어떻게 생성 했습니까?

  • 기본적으로 makecert.exe는 ssl 인증 사용에 적합하지 않은 인증서를 생성합니다.

  • "-sky exhange"옵션을 사용하여 적절한 것을 생성하십시오.

은 makecert -n "CN은 클라이언트 ="-pe는 makecert -n "CN = 호스트"-pe -ss 내 -SR LocalMachine -sky 교환 호스트 내 -SR CurrentUser -sky 교환 client.cer을 -SS .CER

+0

오픈 소스 인증서 생성기를 사용해야하므로 개발 컴퓨터 어디에서나 makecert.exe를 찾을 수 없습니다. 그래도 작동하는 것 같습니다! – Bailz

+0

Visual Studio 명령을 통해 makecert를 호출 할 수 있습니다 (VS 용 개발자 명령 프롬프트) – Sielu

+0

나를 위해 (현재) C : \ Program Files (x86) \ Windows Kits \ 8.1 \ bin \ x86 \ makecert.exe에서 사용할 수 있습니다. – timvw

관련 문제