2011-03-17 85 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