2012-05-01 40 views
0

如何实现登录如何为登录GRAILS(Spring安全性)的用户实现会话?

这个用户会话代码中,我已经实现了

def user=User.findByUserId(params.userId) 
    if(user) 
    { 
    def sessionUser=user 
    def sessionId=sessionUser.id      
    constSessionUser=sessionUser 
    constSessionId=sessionId 
    .......... 
    } 

但如果我登录使用不同的用户名和密码仍然params.userId返回是以前的用户,即使我已经终止session.invalidate()

因为iam使用Springsecurity我只是通过用户名和密码,但创建的会话仍然是以前的用户或任何其他用户当前注册!

1)如何创建为登录使用Spring安全性用户会话SINCE

def user=User.findByUserName(params.username) 

也导致同样的问题

2)怎样终止会话,使得SAME会话不是在过程即使不同的用户已登录

任何帮助将真正的赞赏PLZ ......至于IAM新的Grails ...

+0

能否请更新您的问题更可读的格式?我的意思是改变大写文字到正常。 –

回答

1

你这样做不是n如果您使用的是Spring Security插件,则可以使用会话或手动跟踪用户。当你需要,你可以通过SpringSecurityServicesee docs)访问用户的详细信息,如:

class MyController() { 

    SpringSecurityService springSecurityService 


    def me() {  
    render model: [user: springSecurityService.currentUser] 
    } 
} 
相关问题