使用Grails Spring Security根据所需角色自定义登录页面

时间:2012-01-13 03:29:33

标签: grails spring-security

我有一个带有spring-security-core 1.2.6插件的grails 2.0应用程序。我有不同的页面,其中@Secured注释具有不同的角色(ROLE_USER和ROLE_ADMIN)。这有效,但当我尝试访问用户或管理员安全页面时,我被重定向到相同的登录页面。我更愿意将此登录页面定制为所请求的角色。

例如,如果未经身份验证的用户尝试访问ROLE_USER页面,我会包含指向用户注册页面的链接,但如果他们尝试访问ROLE_ADMIN页面,则不应该这样做。

是否有办法在登录页面中访问请求的角色,或者是获取给定URL的角色列表的方法?

1 个答案:

答案 0 :(得分:0)

要使用两个不同的登录页面,您必须创建自定义 AuthenticationEntryPoint 。以下是SO上的示例:Different login controllers in Grails project with Spring security

要根据用户的角色将用户发送到其他位置,请创建自己的自定义 SuccessHandler ,并根据用户将其发送到其他页面的角色。

这是我发现的博客文章的a link

希望有所帮助。