我在基於osgi的web服務應用程序中使用Servicemix 4.2。 我的web服務應用程序使用隨Servicemix提供的CXF堆棧公開。在Servicemix中添加cutom JAAS登錄模塊時出現問題
現在我們必須將應用程序與單獨開發的Authentication api集成。第三方API使用JAAS作爲鑑別的手段。
我在應用程序包中嵌入了第三方jar。我使用export-package指令導出了LoginModule實現類。
當我嘗試使用第三方提供的JAAS模塊,它給了錯誤 無法創建配置的LoginModule
第三方JAAS提供發現使用該系統的jaas.config文件的位置登錄Context.No的LoginModule屬性 java.security.auth.login.config 的jaas.config文件的內容是如下需要
的LoginModule { com.altair.aaservice.windowsauthn.hwec.WindowsAuthentication; };
做谷歌搜索後,我發現,ServiceMix的開箱即提供了JAAS 阿帕奇菲利克斯Karaf :: JAAS模塊(1.4.0) 阿帕奇菲利克斯Karaf :: JAAS配置(1.4.0)
2分System束你需要修改etc/users.properties文件和一些其他的東西來實現jaas。但是,由於我們需要與第三方jaas供應商整合,我無法看到這些方式。另外,隨servicemix提供的大多數文檔都堅持要使用servicemix方法來實現jaas,因此我找不到任何解決方案。
我手動卸載兩個系統捆綁,在那之後我得到了以下錯誤 javax.security.auth.login.LoginException:無法找到的LoginModule類:com.altair.aaservice.windowsauthn.hwec.WindowsAuthentication不是從包中發現[org.apache.cxf.bundle]
由於我的web服務基於CXF,因此它可能正在尋找此捆綁包。
是否有任何方便的方法將servicemix與自定義jaas實現集成。請告訴我們是否有任何問題。