2012-01-16 3 views
0

https (https://mywebservice/myservice)를 통해 webservice를 가지고 있다면 인증서가 있어야이 웹 서비스에 연결할 수 있습니다. 이 같은webservices SSL (https)

뭔가 :

Java HTTPS client certificate authentication

내가 soapUI 3.5을 사용하여 웹 서비스에 연결할 수있는 이유는, 내 첫 번째 질문이 올바른지 가정이 점을 이해하지는 (그리고 난이 없습니다 구성 "SSL 설정")하지만 Java (Axis 2 1.6.1)을 사용하여 통신하는 경우에는 오류가 발생합니다 (기본 인증을 이미 시도했으며 많은 요청이 SOAP 요청과 매우 유사합니다 (soapUI)). .

SOAPUI 로그에서 "INFO [HttpClientSupport $ Helper] Updating keyStore .."인증서가없는 이유는 무엇입니까?

그리고 SOAP UI에 "SSL Info"에 대한 정보 요청 정보가 있다면 그 의미는 무엇입니까?

내 요점을 이해하시기 바랍니다.

고마워요.

+0

왜 웹 서비스에 액세스하기 위해 클라이언트 인증서 인증을 사용해야합니까? 이 웹 서비스가 설정 되었습니까? 아니면 일반적인 질문입니까? – Bruno

+0

일반적인 질문입니다. SSL을 사용하는 모든 웹 서비스에는 인증서가 있어야하지만 확실하지는 않습니다. – user1152812

+0

적어도 서버 인증서는 있지만 클라이언트 인증서가 필요하지는 않습니다. – Bruno

답변

2

SSL에는 두 가지 상황이 있습니다.

하나는 단방향 인증서이며,이 경우 https를 통해 서버에 연결하고 서버는 공개 버전의 인증서 (예 : soapui)를 클라이언트에 제공합니다. SoapUI가 작동하려면 루트 인증서 (인증서 체인의 끝에있는 경우) 또는 실제 인증서 (자체 서명 된 인증서 인 경우)를 알아야합니다.

양방향 인증이 사용되는 드문 상황에서 단방향은 여전히 ​​위와 같지만 다른 방향에서는 클라이언트가 자체 인증을위한 인증을 제공합니다. 이 경우 서버는 인증서를 승인 할 수 있어야합니다.

웹 서비스가 인증을 위해 인증서를 기대하는 경우가 아니면 위에서 설명한 단방향 인증서의 경우 일 가능성이 높습니다. 그런 다음 자체 서명되었는지 확인하는 것이 가장 좋습니다 인증서 또는 인증서 체인의 끝.

unix/linux 시스템에서는 openssl을 사용하거나 웹 서비스에 연결 한 후 모든 시스템에서 브라우저의 인증서를 열어받은 인증서의 구조에 대한 자세한 정보를 얻으십시오.

사용중인 클라이언트에 따라 상황을 수정하는 방법에 따라 달라 지지만 soapui를 호출하는 데 사용되는 java 버전의 cacerts 파일에 루트 인증서를 추가하는 경우가 있습니다.