我對最新的Glassfish服務器(3.1.2)上部署的多模塊應用程序使用標準容器身份驗證。Java EE身份驗證,基本或表單AND證書身份驗證
我曾經有形式認證爲主體的網絡模塊和HTTP含REST Web服務模塊基本身份驗證。
現在,這兩個模塊,我需要能夠執行證書認證,但只作爲一個選項。某些客戶端仍需要能夠通過表單/基本身份驗證進行登錄。
我試圖使用JSR-196以截取由反向代理轉發證書認證數據。這裏的問題是,在Glassfish中,似乎我需要重新實現容器提供的一些幫助,如果我使用JSR-196:在會話,SSO,甚至表單/基本身份驗證中存儲身份驗證...這是Glassfish方式或我的,似乎,但我想要一個混合。所以,我的JSR-196模塊現在需要處理證書,基本和表單身份驗證以及持久性機制。看起來矯枉過正。
我試過一個比較幼稚的方法,即用形式的認證,並有我的反向代理髮送身份驗證數據j_security_check。它適用於第一個模塊,但是太具體實現,看起來像一個黑客。
我還想象在另一模塊做證書認證時,直接在應用服務器(沒有反向代理)上,並重定向到一旦被認證原始模塊,使用SSO膠水。但glassfish上的sso在具有不同auth類型的模塊之間不起作用。
我寧願使用標準的東西,如果可能的話優雅。另外,我希望我的應用程序使用Java EE安全性,而不是某些第三方庫,無論是來自Spring還是其他任何庫。
在Glassfish上實現這個選項有哪些選項?
任何人想分享爲什麼他們給-1? – ymajoros