2011-03-17 115 views
0

我正在嘗試爲彈性安全的Flex Web應用創建自定義登錄。 我有一個工作版本,我們使用channelset.login blazeds。彈簧安全分割驗證和授權

我遇到的問題是我想拆分認證和授權。

我想要求用戶在身份驗證後做出一些選擇以確定其角色。

由於用戶被授權的角色由該選擇決定。

這意味着用戶必須進行身份驗證,然後客戶端需要對服務執行服務調用,然後需要執行授權過程。

有誰知道這是否可能,並有一些如何做到這一點的提示?

由於提前,

回答

0

是的,這聽起來不是太牽強了。 您可以將用戶角色存儲在數據庫中,爲新用戶創建類似SIGNUP的每個角色,只有在用戶確定新角色後才允許用戶註冊,只需更新角色並限制新角色無法更新角色再次,除非你是管理員。

您還可以覆蓋認證過程做任何你想做的事:http://mark.koli.ch/2010/07/spring-3-and-spring-security-setting-your-own-custom-j-spring-security-check-filter-processes-url.html

會話對象可能需要,如果你正在使用某種形式的ORM的被刷新。

+0

感謝您的快速回復。但問題不在於想要註冊的新用戶。每次用戶登錄時,他都會得到一些選擇。一個例子就是他必須選擇一個客戶。取決於客戶,他可以獲得該客戶配置的角色。所以在用戶名被檢查和認證後,我需要回到客戶端詢問用戶。客戶端將客戶發送回服務器,並在那裏從數據庫中選擇角色。 – 2011-03-17 11:14:09

+0

這應該仍然有效,只需允許用戶切換到其他角色即可切換到另一個角色。 角色只是字符串,這意味着您可以將任何角色分配給任何用戶。 – 2011-03-17 11:21:31

+0

奧克,我會看看這個。我嘗試在我的一個服務中更改角色,但是spring返回了一個錯誤,指出角色列表無法更改。 – 2011-03-17 11:41:50