문제

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

의도는 내장 비누 발신자 대상을 사용하여 원격 보안 웹 서비스를 호출하고 해당 클라이언트 인증서를 포함하는 것입니다.

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

플랫폼:

  • Windows 2003 SP2
  • Mirth 1.8
  • Java JRE1.5.0_09

의문: SSL에서 보안 한 웹 서비스를 호출 할 때 Mirth SOAP 발신자가 클라이언트 인증서 (*.cer)가 포함 된 구성 단계 (miRTH, JRE 인증서 저장소 등)는 무엇입니까?

도움이 되었습니까?

해결책 2

MIRTH 1.8은 SOAP 웹 서비스를 호출 할 때 클라이언트 인증서를 보낼 수 없습니다.

다른 팁

Java 런타임, 또는 더 구체적으로 Sun JSSE 제공 업체는 일부 시스템 속성이 설정되면 클라이언트 인증서를 제시합니다. 당신은에서 세부 사항을 읽을 수 있습니다 JSSE 참조 안내서, 그러나 중요한 속성은입니다 javax.net.ssl.keyStore 그리고 javax.net.ssl.keyStorePassword.

이 접근법에는 몇 가지 단점이 있습니다. 먼저, 키 스토어 비밀번호를 시스템 속성으로 설정하면 해당 프로세스에서 실행중인 코드에 액세스 할 수 있습니다. SecurityManager 설치됩니다. 둘째, 이러한 설정은 "기본값"을 통해 생성 된 모든 SSL 소켓에 사용됩니다. SSLContext. 다른 엔드 포인트에 대해 다른 자격 증명이 필요한 경우 mirth 특정 솔루션이 필요합니다.

질문에는 시작점이 지정되지 않았지만 처음부터 시작하면 가장 쉬운 방법은 새로운 Java 키 저장소 ( "JK"형식)를 만들고 새로운 키 쌍과 CSR을 생성하는 것입니다. CSR을 CA로 보내고 인증서를 돌려받은 후 동일한 키 저장소로 가져 오십시오. 그 주요 상점은 사용할 준비가되었습니다.

인증서를 이미 사용할 수있는 경우 PKCS #12 형식 (.p12 또는 .pfx 파일)의 해당 개인 키와 함께 저장 될 수 있습니다. 이들은 Java 응용 프로그램에서 직접 사용할 수 있지만 javax.net.ssl.keyStoreType 속성을 설정해야합니다 "PKCS12"

나는 이것에 대해 조금 늦었지만 실제로는 가능성이 있습니다. JVM에 몇 가지 구성 매개 변수를 보내면 기본 비누 엔진이 HTTPS로 전환하여 적절한 인증서를 제공 할 수 있습니다.

VM 구성을 위해 설정할 매개 변수에 대한 자세한 내용은이 질문을 참조하십시오.

Java HTTPS 클라이언트 인증서 인증

당신은 돌봐야 할 것이 꽤 많다는 것을 알게 될 것입니다. 일반적으로 HTTPS 및 클라이언트 인증은 인증서를 적절하게 구성한 후에는 "만 작동"해야합니다. 그러나 B2B 스타일 클라이언트에 친절하지 않은 서버가 있으므로 조심해야합니다.

JDK 6_21과 인증서를 사용하여 몇 가지 조정을 사용하여 서버 중 하나를 작동하게 할 수 있었지만 서버에서 제대로 구성하는 데 약 15 분이 걸리는 것이 길고 고통 스러웠습니다.

다음은이 문제를 해결하는 또 다른 질문입니다 (비우호적 인 서버에 대한 클라이언트 측 인증).

클라이언트 SSL 인증 IIS에서 403.7 오류를 일으킨다

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top