2014-01-29 3 views
2

조직 내부에서 실행되는 독점적 서버의 RESTful API와의 인터페이스가 진행 중입니다. 우리는 HiveMQ를 사용하고 있으며 HiveMQ 웹 사이트에서 매우 유용한 문서를 기반으로 간단한 플러그인을 만들었습니다.HiveMQ RESTful 인증 플러그인

캐싱 및 비 블로킹 철학을 검토 했으므로 플러그인 코드를 작성할 때이를 고려해야한다는 것을 이해해야합니다.

우리의 RESTful API는 스프링 보안 Remember-Me Auth을 구현했으며 HiveMQ 플러그인은 '유효한'응답을 사용하여 HiveMQ에서 Auth를 제공합니다.

내 질문은 가 HiveMQ 최고의으로 자바 편안하고 클라이언트가 해당 인터페이스를 권장있는가? 분명히 나는 ​​주변을 수색하고 다양한 옵션이 있다는 것을 알고있다. 나는 HiveMQ에 대한 더 많은 경험을 가진 사람이 다른 사람들보다 좋았던 /하지 못한 것에 관해 통찰력을 줄 수 있기를 바라고 있습니다.

건배!

답변

2

이론적으로 모든 Java HTTP 클라이언트는 인증 플러그 인에서 작동해야합니다. Apache HTTPClient와 Netty가 이러한 작업을 완벽하게 수행한다는 것을 알고 있습니다. Apache HTTPClient로 개념 증명을 보여주기 위해 예제 플러그인 on Github을 만들었습니다. API가 조금 어색하지만 HTTPClient는 단단하고 (쓰레드 안전합니다!).

앞에서 설명한 것처럼 메커니즘을 사용하여 크기를 조정하려면 적절한 캐싱이 매우 중요합니다. HiveMQ가 안정적인 API를 제공하는 서버의 응답을 기다려야하기 때문에 Blocking은 AuthenticationCallback에서 문제가되지 않습니다. 개인적으로 작은 시간 초과를 사용합니다.

REST 인증을 시작하는 데 도움이되기를 바랍니다. 해당 주제에 대한 심층적 인 토론을 위해 HiveMQ Google Group도 있습니다.

+1

감사합니다. 나는 저지를 사용하는 것을 끝내었다. 그것은 지금까지 일하고 있었다. 백엔드 서버로 인증 할 수 있으며 HiveMQ는 그 결과에 따라 허용/거부 할 것입니다. HiveMQ Google 그룹을 살펴 보겠습니다. –

+0

관심있는 사람 : 여기에서 해당 주제에 대한 작은 블로그 게시물을 작성했습니다. http://forkbomb-blog.de/2014/bringing-mqtt-authentication-and-rest-together –