3

그래서, 나는 다음과 같은 시스템을 가지고 : 다음인증서 문제 403.7

blar.ServiceSecurity wsSecurity = new blar.ServiceSecurity(); 
wsSecurity.Url = this.tURL + "Security.asmx"; 
CookieContainer cc = new CookieContainer(); 
wsSecurity.CookieContainer = cc; 
wsSecurity.ClientCertificates.Add(X509Certificate.CreateFromCertFile(certPath)); 

blar.LoginResult lr = wsSecurity.Login(login, password); 

것을 얻을 수있다 this.tURL + "Security.asmx"Login 방법에서 웹 서비스 : 다음과 같이 서비스를 요청하는 클라이언트 응용 프로그램이 있습니다 ClientCertificate (certPath) from :

Context.Request.ClientCertificate.Certificate; 

무언가를하십시오. 두 가지 문제가

있습니다 : IIS의 구성이 Require client certificates을 말한다면
, 난 로그인 함수를 호출에 403.7 오류가 ;
IIS의 구성이 Accept client certificates이라고하면 이 발생합니다. CryptographicException "m_safeCertContext는 유효하지 않은 핸들입니다.";

그러나의 경우 이러한 문제는 클라이언트가 Windows 7 x64에서 작동하거나 Windows XP 또는 Windows Server 2003에서 실행될 때만 발생합니다.

ca가 두 시스템에 모두 설치되어 있는데 구성은 모든 테스트 케이스에서 완전히 동일합니다.
그래서 내 질문은 '무엇입니까?'

+0

Vista/Windows 7 x86에서도 테스트 할 수 있습니까? XP/2003 이후에 인증서 API가 크게 변경되었습니다. Vista/7 x86 테스트는 그것이 64 비트 문제인지 아니면 다른 문제인지 판단하는 데 도움이 될 수 있습니다. – user423430

답변