2012-05-15 3 views
4

우리는 내부 CRM과 대화하기 위해 Play 설정을 시도하고 있습니다. 이전의 모든 응용 프로그램은 잔인한 JSF 프레임 워크 (ICEfaces)로 작성되었습니다.하지만 JSF 응용 프로그램은 glassfish가 통신 할 수있는 인증서를 설치 한 glassfish 상자에 배포되었으므로 CRM과의 대화에서 제대로 작동했습니다. 우리의 CRM 웹 서비스.Play Framework : 내부 웹 서비스 용 키 저장소

이제 우리는 똑같은 일을하기 위해 노력하고 있습니다. 우리는 netty에서 놀이 앱을 실행하기 위해 약간의 어려움을 겪고 있습니다. 인증서를 키 스토어 (또는 유사)에 가져 와서 CRM과 통신 할 수있는 방법은 무엇입니까? CRM은 회사 내부에 있으므로 인증서는 필요에 따라 자체 서명되고 배포됩니다.

재생 설정 파일에서 다음을 시도했습니다.하지만이 설정 속성은 재생 서비스가 아닌 다른 서비스와 통신하기 위해 재생 서버 자체에 대한 것보다 더 많은 것 같습니다.

# Keystore 
trustmanager.algorithm=jks 
ssl.KeyManagerFactory.algorithm=SunX509 
keystore.algorithm=jks 
keystore.password=changeit 
keystore.file=conf/cacerts.jks 

우리의 다른 개발자 중 한 명은이 작업을 수행 할 수 있었지만 이상적이지 않은 코드에 직접 넣어야했습니다. 참고로

System.setProperty("javax.net.ssl.trustStore", "C:/webapps/playapp1/cacerts.jks"); 
System.setProperty("javax.net.ssl.trustStorePassword", "changeit"); 
System.setProperty("javax.net.ssl.keyStoreType", "jks"); 
System.setProperty("javax.net.ssl.keyStore", "C:/webapps/playapp1/keystore.jks"); 
System.setProperty("javax.net.ssl.keyStorePassword", "changeit"); 

, 우리의 CRM은 우리가 유사 각 서비스 (에 대한 클라이언트 코드를 구축하지 않아도 우리를 위해 웹 서비스를 래핑 우리가 우리의 JSF 또는 재생 응용 프로그램에 드롭 jar 파일을 빌드 항아리, 다운로드 아마존의 S3 서비스). 이 서비스 항아리는 XML/Rest를 통해 우리의 서비스로 다시 통신하기 위해 저지를 사용합니다. SSL을 사용하지 않을 때 재생 프레임 워크에서 제대로 작동합니다.

답변

0

어떤 버전의 게임을 사용하고 있습니까? 안전한 지원을 비활성화했기 때문에 실제로 플레이 프레임 워크를 다시 컴파일해야한다는 것을 알고 있습니다. 하지만 버전 1.1이라고 생각합니다.

+0

우리는 1.2.4와 2.0.1에서 모두 사용해 보았습니다. – rmmeans