我有一个带有spring-security-core 1.2.6插件的grails 2.0应用程序。我有不同的页面,其中@Secured注释具有不同的角色(ROLE_USER和ROLE_ADMIN)。这有效,但当我尝试访问用户或管理员安全页面时,我被重定向到相同的登录页面。我更愿意将此登录页面定制为所请求的角色。
例如,如果未经身份验证的用户尝试访问ROLE_USER页面,我会包含指向用户注册页面的链接,但如果他们尝试访问ROLE_ADMIN页面,则不应该这样做。
是否有办法在登录页面中访问请求的角色,或者是获取给定URL的角色列表的方法?
答案 0 :(得分:0)
要使用两个不同的登录页面,您必须创建自定义 AuthenticationEntryPoint 。以下是SO上的示例:Different login controllers in Grails project with Spring security。
要根据用户的角色将用户发送到其他位置,请创建自己的自定义 SuccessHandler ,并根据用户将其发送到其他页面的角色。
这是我发现的博客文章的a link。
希望有所帮助。