2009-10-14 63 views
0

我有相關的JBoss 5認證三部分的問題(在Web/EJB容器):JBoss的認證問題(S)

  1. 有沒有辦法來傳播完成除用戶名以外的 身份登錄時指定的 ?對於 例如,使用 DatabaseServerLoginModule,我想 驗證了 用戶名/密碼的用戶,但返回 用戶的ID,而不是用戶名,當 ejbContext.getCallerPrincipal()或 httpRequest.getUserPrincipal()是 叫。

  2. 更妙的是,我想創建一個自定義 登錄模塊返回用戶 對象(可能這是 從數據庫加載一個實體)。但是,即使我將該對象很好地包裝到 登錄模塊的主子類中,EJB層從不 也會獲取該對象。相反,當 getCallerPrincipal被調用時, EJB層始終會獲得一個 SimplePrincipal。

  3. 我希望能夠以編程方式觸發登錄 ,如 WebAuthentication中所述。但是,我需要 來做到這一點,而不知道密碼 。設想一個客戶服務 接口,客戶服務 代理可以作爲最終用戶登錄到應用程序 。他們會點擊 「登錄,如」按鈕,我們應該 能夠以編程方式記錄他們在 作爲一個用戶,而不用知道 用戶的密碼(客戶 服務代理已經 驗證自身)。你可以 也有這種與 相同的情況下「忘記密碼」,它採用了 替代登錄機制 驗證用戶,然後 編程方式記錄他們進來。

謝謝!

回答

0

接聽從兩年前開始我自己的問題:因爲我寫這個問題的時候,我們切換到春天安全性,並發現它比僅在JBoss中提供的靈活得多。我向任何尋求這個問題真正解決方案的人推薦,就是放棄容器提供的認證,並仔細看看Spring Security。

0

1)不是很熟悉DatabaseServerLoginModule,但不應該用戶的ID也是他們的用戶名?用戶名至少應該是唯一的?

(也許讀你的問題後剩下嗯,這是沒有幫助的......)