Java 클라이언트로 웹 서비스를 호출해야합니다. 이 서비스는 메시지 수준의 인증서 (SSL이 아닌 Ws-Security)를 통해 클라이언트를 인증합니다.메시지 보안 및 클라이언트 인증서 인증을 사용하여 웹 보안을 호출하는 방법은 무엇입니까?
this dialog에 상호 인증서 보안을 사용하여 JAX-WS로 웹 서비스를 생성 할 수 있으므로 가능해야합니다.
하지만 클라이언트를 생성 할 수 없습니다. 누구나 아이디어가 있습니까?
Java 클라이언트로 웹 서비스를 호출해야합니다. 이 서비스는 메시지 수준의 인증서 (SSL이 아닌 Ws-Security)를 통해 클라이언트를 인증합니다.메시지 보안 및 클라이언트 인증서 인증을 사용하여 웹 보안을 호출하는 방법은 무엇입니까?
this dialog에 상호 인증서 보안을 사용하여 JAX-WS로 웹 서비스를 생성 할 수 있으므로 가능해야합니다.
하지만 클라이언트를 생성 할 수 없습니다. 누구나 아이디어가 있습니까?
나는 나 자신에게 그것을을 시도했지만 http://download.oracle.com/docs/cd/E17802_01/webservices/webservices/docs/2.0/tutorial/doc/에서하지 않았다 :
메시지 보안 구성 XWSS
응용 프로그램 서버가 JAR의 모든 JAX-WS를 확보 XWS-Security를 사용하는 데 필요한 파일이 포함되어 사용 그러나 샘플 응용 프로그램을 보려면 독립형 Java WSDP 번들을 다운로드하여 설치해야합니다. Java WSDP는 http://java.sun.com/webservices/downloads/webservicespack.html에서 다운로드 할 수 있습니다.
는 클라이언트 측에서 다음과 같이 XWSS를 사용하여 기존 JAX-WS 응용 프로그램에 메시지 보안을 추가하려면 :은 클라이언트 보안 구성을 만듭니다. 클라이언트 보안 구성 파일은 클라이언트 응용 프로그램에 사용될 메시지 보안 조작의 순서와 유형을 지정합니다.
작성에 대한 자세한 정보 및 보안 구성을 이해하고 설정 SecurityEnvironmentHandlers를 들어
<xwss:Sign id="s" includeTimestamp="true">
<xwss:X509Token encodingType="http://docs.oasis-
open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"
valueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-
x509-token-profile-1.0#X509SubjectKeyIdentifier"
certificateAlias="xws-security-client"
keyReferenceType="Identifier"/>
</xwss:Sign>
</xwss:SecurityConfiguration>
</xwss:Service>
<xwss:SecurityEnvironmentHandler>
simple.client.SecurityEnvironmentHandler
</xwss:SecurityEnvironmentHandler>
, 제발 예를 들어, 간단한 보안 구성은 디지털 서명 작업은 다음과 같습니다 수행 http://java.sun.com/webservices/docs/1.6/tutorial/doc/index.html에있는 Java Web Services Developer Pack 1.6 자습서를 참조하십시오.
클라이언트 코드에서 생성 된 보안 구성으로 초기화 된 XWSSecurityConfiguration 개체를 만듭니다. 다음은 클라이언트 파일에서 사용할 코드의 예입니다. 이 코드를 사용하는 완전한 파일의 예를 보려면 \ jaxws2.0 \ simple-doclit \ src \ simple \ client \ 디렉토리에있는 예제 클라이언트를보십시오. XWSSecurityConfiguration.MESSAGE_SECURITY_CONFIGURATION
속성을 사용하여 RequestContext
에
FileInputStream f = new FileInputStream("./etc/client_security_config.xml");
XWSSecurityConfiguration config = SecurityConfigurationFactory.newXWSSecurityConfiguration(f);
설정 보안 구성 정보를 표시합니다. 이 코드를 사용하는 완전한 파일의 예를 보려면 \ jaxws2.0 \ simple-doclit \ src \ simple \ client \ 디렉토리에있는 예제 클라이언트를보십시오. 당신이 XWS-보안을 추가에 관계없이 클라이언트를 작성 한 경우와 마찬가지로
// put the security config info
((BindingProvider)stub).getRequestContext().put(
XWSSecurityConfiguration.MESSAGE_SECURITY_CONFIGURATION,
config);
Holder<String> hold = new Holder("Hello !");
stub.ping(ticket, hold);
감사합니다. 그러나 netbeans를 사용하면 WSDL에서 생성 할 수 있습니다. 트러스트 스토어가 공개 키이고 키가 비공개 + 공개 키를 저장한다는 것을 알지 못했습니다. –