2017-04-24 6 views
1

나는 C로 작성된 클라이언트를 가지고있다. libcurl을 사용하여 json을 편안한 API 서비스 (서버라고 부른다)로 보낸다. 서버는 Java에 의해 작성되었으며, 편안한 API는 JAX-RS 중 하나 인 저지에 의해 구현되었습니다 (매우 간단하며 다른 JAX-RS 구현으로 전환 할 수 있음). 이제는 Java 클라이언트 API를 사용하여 Java 클라이언트에 액세스하는 보안 작업을 수행하려고합니다. 나는 인터넷에서 kerberos 또는 spnego를 HTTP 액세스에 사용해야한다고 판단했습니다. 나는 어떤 문제를 만났다.편안한 서비스에서 kerberos/spnego 지원을하는 방법?

  1. kerberos/spnego 인증을 사용하고 싶습니다. 하지만 저지지 (https://jersey.java.net/documentation/latest/security.html)의 보안 부분을 살펴본 결과 kerberos 관련 문서를 찾지 못했습니다. 저지가 케르베로스를 지원하는지 알아?

  2. Apache CXF로 전환하면 쉽게 전환 할 수 있습니까? CXF kerberos 지원에 대한 문서를 확인했습니다. 아파치 CXF를 사용할 때 kerberos 인증을 지원하는 세부적인 문서 또는 간단한 예제가 있습니까?

잘못된 것이 있으면 저를 시정하십시오. 감사.

+0

해결합니다. 나는 방금 이것을했다. 이 페이지에는 Tomcat에서 수행하는 방법에 대한 정보가 있습니다 (https://tomcat.apache.org/tomcat-8.5-doc/windows-auth-howto.html). 이 구성을 관리했지만 ktpass 도구가 없으므로 JDK와 함께 제공되는 ktab 도구를 사용했습니다. –

답변

0

저지에서 달성 할 수 있습니다. Jersey Client는 구현시 ClosableHttpClient를 사용합니다.

Kerberos에 대해 SPNEGO 인증 스키마를 사용하려는 경우 사용자 지정 커넥터 및 ConnectorProvider [ApacheConnector를 사용하여 AuthenticationScheme을 설정하는 방법을 찾지 못했음]을 작성해야 할 수 있습니다.

확인이 게시물도 참조 할 수 있도록 당신의 쓰임새 세 번째 옵션은 응용 프로그램 서버에서 SPNEGO를 구성하는 것입니다 Can JCIFS be used with Jersey? :