2009-06-02 8 views
0

Mirth에서 외부 SSL SOAP 웹 서비스를 호출하는 시나리오입니다. 웹 서비스에는 클라이언트 인증서와 함께 SSL/TLS 연결이 필요합니다.Mirth : 클라이언트 인증서가있는 SSL SOAP 웹 서비스 호출

내장 된 SOAP Sender Destination을 사용하여 원격 보안 웹 서비스를 호출하고 그 클라이언트 인증서를 어떻게 든 포함시킵니다.

먼저 Java 런타임에 해당 클라이언트 인증서를 설치해야한다는 점을 이해합니다. 이것은 Java 런타임의 인증서 저장소 또는 Jetty certstore 내에있을 수 있습니다.

플랫폼 :

  • 윈도우 2003 SP2
  • 환희 1.8
  • 자바 jre1.5.0_09

질문 : 어떤 구성 단계 (환희, JRE 인증서 저장소 등 .) SSL로 보안 된 웹 서비스를 호출 할 때 클라이언트 인증서 (* .cer)가 포함 된 Mirth SOAP Sender를 성공적으로 갖도록 제안 하시겠습니까?

답변

1

으로 설정해야합니다. Mirth 1.8은 SOAP 웹 서비스를 호출 할 때 클라이언트 인증서를 보낼 수 없습니다.

2

일부 시스템 등록 정보가 설정된 경우 Java 런타임 또는 더 구체적으로 Sun JSSE 제공자는 클라이언트 인증서를 제공합니다. JSSE Reference Guide,에서 세부 정보를 읽을 수 있지만 중요한 속성은 javax.net.ssl.keyStorejavax.net.ssl.keyStorePassword입니다.

이 접근법에는 몇 가지 단점이 있습니다. 먼저 키 저장소 암호를 시스템 등록 정보로 설정하면 SecurityManager이 설치된 경우 제어 할 수 있지만 해당 프로세스에서 실행중인 모든 코드에 액세스 할 수 있습니다. — 둘째,이 설정은 "default"SSLContext을 통해 생성 된 모든 SSL 소켓에 사용됩니다. 다른 엔드 포인트에 대해 다른 신임 정보가 필요한 경우, Mirth 특정 솔루션이 필요합니다.

질문에 시작점이 지정되지 않았지만 처음부터 시작하는 경우 가장 쉬운 방법은 새로운 Java 키 저장소 ("JKS"형식)를 만들고 새 키 쌍과 CSR을 생성하는 것입니다. CSR을 CA에 보내고 인증서를 다시 가져온 후에는 동일한 키 저장소로 가져옵니다. 해당 키 저장소를 사용할 준비가되었습니다.

인증서를 이미 사용할 수있는 경우 해당 개인 키가 PKCS   # 12 형식 (.p12 또는 .pfx 파일)에 저장되어있을 가능성이 큽니다. 이 값은 Java 응용 프로그램에서 직접 사용할 수 있지만 속성은 "PKCS12"

0

나는 이것을 위해 조금 늦었지만 실제로는 그럴 가능성이있다. 몇 가지 구성 매개 변수를 JVM에 보내면 기본 SOAP 엔진이 HTTP로 전환하고 적절한 인증서를 제공받을 수 있습니다.

는 VM

Java HTTPS client certificate authentication

당신이 알아서 꽤 몇 가지가 알을 구성하는 설정 매개 변수있는에 대한 자세한 내용은이 질문을 참조하십시오. 일반적으로 HTTPS 및 클라이언트 인증은 인증서를 적절히 구성한 후에는 "제대로 작동합니다".하지만 B2B 스타일 클라이언트에게는 친숙하지 않은 서버가 있으므로주의해야합니다.

JDK 6_21을 사용하고 인증서를 사용하여 몇 가지 수정 작업을 수행했지만 그 중 하나의 서버를 작동시킬 수는 있었지만 서버 측 구성에 약 15 분이 걸리는 시간이 길고 아팠습니다.

여기이 문제 (불친절한 서버에 대한 클라이언트 측 인증)를 해결하는 또 다른 질문입니다.

Client SSL authentication causing 403.7 error from IIS

관련 문제