2008-11-06 3 views
3

HTTP 서버에 배포 된 스윙 응용 프로그램이 있습니다. 사용자는 브라우저를 사용하여 URL을 지정하고 java webstart를 사용하여 클라이언트를 설치합니다. 이제 HTTP 서버에 배포 된 내 애플리케이션에 https 액세스를 허용해야합니다. jnlp 파일에서 지원되는 기본 JDK로 JDK 1.5를 사용하고 있습니다. 당분간은 jars (Sun의 jarsigner, keytool 등 utils를 사용하여 기본적으로 생성 된)에 서명하는 자체 서명 된 인증서를 사용합니다.Java Webstart에 https 사용

해결 방법/단계가 많이 감사하겠습니다. 사전

라 메쉬

+0

그리고 정확히 무엇이 문제입니까? 어떻게 든 질문문만으로는 효과가없는 것을 보지 못합니다. – Tomalak

답변

0

당신이 활용할 수 바라고있다 HTTPS의 기능은 무엇인가에

감사합니다?

  • 서명/서버 인증은 코드 서명을 통해 수행되지만 자체 서명 인증서를 사용하여이를 손상시킬 수 있습니다.
  • 응용 프로그램 코드에 엿듣기에서 숨겨져 야하는 비밀이 포함되어 있습니까?

"사용 설정 필요"라고 말하면 근본적인 이유가 있어야합니다.

"https가 필요하기 전에"적절한 코드 서명 인증서가 필요하다고 생각합니다. 매우 구체적인 질문 대신 근본적인 문제를 해결할 수 있도록 질문을 수정하는 것이 좋습니다.

+0

신뢰할 수있는 서버 인증서를 사용하면 중간 공격에서 사람을 막을 수 있으며 적절한 서버에서 웹을 시작할 수 있습니다. 하지만 이미 병에 서명했기 때문에 그럴 수도 있습니다. –

+0

맞지만 더 자세히 설명 할 수 있습니다. https를 사용하도록 설정하면 도청 자의 코드 전송을 차단하고 예상되는 서버에서 온 것입니다. 항아리에 서명을하면 전송 된 코드가 서명자가 클라이언트에 전송할 것으로 예상 한 코드임을 확인합니다. 단지 https를 사용한다는 것은 잘못된 코드가 올바른 서버에서 왔음을 의미합니다. 단지 항아리에 서명하면 변경되지는 않았지만 "중간에 남자"가 전송을 수신 할 수 있음을 의미합니다.한 번 실행되면 응용 프로그램이 서버로 데이터를 전송할 때 다른 웜 깡통을 열 수 있습니다. –

1

귀하의 질문을 이해하는 한 귀하는 귀하의 고객 코드를 변경할 필요가 없습니다. HTTPS를 통해 JNLP에 대한 액세스 권한 만 부여하려면 JNLP를 배포하는 응용 프로그램 서버를 다시 구성하거나 응용 프로그램 서버 앞에 웹 서버가있는 경우 (여기서는 사용자 - https -> apache -> AJP -> tomcat) HTTPS를 통해 JNLP에 액세스 할 수 있도록 웹 서버를 다시 구성해야합니다.

2

웹 서버에서 HTTPS를 활성화해야합니다. 인증서를 얻으려면 자격 증명과 VeriSign 또는 Thawte와 같은 인증 기관 (CA)에 서버의 호스트 이름을 제공해야합니다. 루트 인증서 또는 중간 인증서로 서명 된 서버 인증서를 제공 할 수 있습니다. SSL을 통한 HTTPS를 사용하려면이 인증서를 웹 서버로 가져와야합니다. 브라우저 또는 웹 스타트와 같은 웹 클라이언트는 서버에 액세스 할 때 인증서 체인을 확인합니다.

자체 서명 된 jar를 사용하면 모든 사용자에게 안전하지 않을 수있는 코드에 대한 경고 메시지가 표시됩니다. 이를 방지하려면 CA에서 코드 서명 인증서를 받아야합니다.이 인증서는 웹 서버 인증서와 다소 유사합니다. 이 CA 제공 인증서는 키 저장소로 가져올 수 있으며 자체 서명 된 인증서를 사용하는 것과 같은 방법으로 사용됩니다. 코드 서명 인증서는 CA가 서명하여 인증서 체인이 webstart에 의해 검증 될 수 있도록합니다.