2013-02-04 27 views
4

我們的應用程序由多個OSGi包組成,它們通過RESTful URI公開其功能。保護這些URI的最佳方式是什麼,以便只有登錄和授權的用戶才能訪問它們?對於一個普通的Web應用程序,我會使用一個Web過濾器來控制對所有這些URI的訪問。有沒有一種方法可以使用OSGi中的所有這些URI只使用一個安全過濾器(或其等同物)來保護訪問?或者,我是否需要將安全篩選器包含在每個OSGi捆綁包中?如果它很重要,我們使用的容器是Apache Karaf。什麼是OSGi包中的Java Web應用程序過濾器的等價物?

回答

4

Apache Felix Http Jetty服務包括一個過濾設施。使用它最簡單的方法是安裝Apache Felix Http Whiteboard捆綁包,然後註冊一個篩選器服務...

不幸的是,這還不是OSGi規範,但可能會成爲下一輪規格的一部分。我現在一直在使用這種模型來確保您的安全類型,現在已經有6個月了,它的功能就像一個魅力。

+0

謝謝。我將檢查Http白板捆綁。 –

2

支持此功能的另一種擴展板是Pax-Web。 但不僅白板,如果與標準一起使用。 OSGi http-service支持過濾器和JSP。從版本2.0開始,它也支持servlet 3.0偏移。 Pax-Web的下一個版本也將支持沒有web.xml的Jar中帶註釋的Servlet。 欲瞭解更多信息,請看看http://team.ops4j.org/wiki/display/paxweb/Pax+Web

相關問題