由於要儘可能保持Web服務無狀態的雄心,我遇到了一個問題。我最近開始與Axis2合作,並試圖找到可行的身份驗證解決方案。通過身份驗證,我的意思是用戶/密碼。我已經將SSL與WS-Policy結合使用來確保程序調用的安全。然而,我發現一些與Rampart 1.6.2捆綁在一起的樣本已經過時,特別是名爲「sample-tomcat」和它們的WSPasswordCallback處理程序(找到了here)的策略示例。 WSPasswordCallback.USERNAME_TOKEN_UNKNOWN
在1.6中被棄用,並且WSPasswordCallback.getPassword()
總是返回null,即使在消息的安全性標頭中的UsernameToken元素中提供了密碼。Axis2用戶認證
所以。我不確定在哪裏進行每個消息的用戶名/密碼檢查。我正在看這兩個選項:
用執行用戶名/密碼身份驗證的處理程序編寫模塊。
放棄無狀態並編寫一個登錄服務返回所有其他服務所需的令牌。
還有其他的選擇嗎?
我不認爲你可以擺脫無國籍狀態,但你可以通過請求中的一些信息進行身份驗證/授權。 –
擺脫無國籍?那麼,我可以實現狀態,這是肯定的。但我希望儘可能少的狀態,最好沒有任何。 – Wrench