2015-02-24 95 views
0


如何在Tomcat6下實現Jersey 1.18上的用戶身份驗證? Tomcat6使用領域(現在不能使用)或Servlets(如果用戶可以調用URI,則使用調度器邏輯)。 Jersey有ServletContainer和過濾器,但是我找不到任何這個目標。
我需要的是:Jersey + Tomcat身份驗證

  1. 用戶角色從數據庫中檢索用戶名(httpReq.getRemoteUser())
  2. 加載用戶角色
  3. 檢查訪問的URI,並拋出401

使用哪個Class/Jersey.Filter/Jersey.Servlet可以進行第3步處理?
我真的很抱歉,領域是非常有用的,但是這個服務器有自己的Realm模塊,並且出於安全原因它不能被重新實現。由於Jersey Servlet容器的存在,我擔心使用Http Servlet。
感謝您的意見;-)

+0

嗨!我會做一個authenticationFilter,你可以看到很多答案,例如[this one](http://stackoverflow.com/questions/23231511/jersey-2-how-to-create-custom-http-param-binding/23383460#23383460)。但是,我快速瀏覽了Jersey 1.18的文檔,它真的很老了!我不認爲你可以在澤西島1.18中以相同的方式進行比賽。我想唯一的方法是在tomcat級別添加一個過濾器,如果認證正常,則將請求傳遞給Jersey,否則返回錯誤代碼。希望能幫助到你。 – lrnzcig 2015-02-25 19:20:40

+0

好的,謝謝你的建議。我接受它作爲答案,因爲我(已經)知道Tomcat.Filter解決方案存在,但仍希望Jersey 1.18解決方案。感謝你,因爲「沒有解決方案」是解決方案:-) – zegee29 2015-03-02 09:23:39

回答

0

通過:lrnzcig 2月25日19時20分
嗨!我會做一個認證過濾器,你可以看到很多答案,例如這個。但是,我快速瀏覽了Jersey 1.18的文檔,它真的很老了!我不認爲你可以在澤西島1.18中以相同的方式進行比賽。我想唯一的方法是在tomcat級別添加一個過濾器,如果認證正常,則將請求傳遞給Jersey,否則返回錯誤代碼。希望能幫助到你。