1

我正在构建一个可以选择通过 facebook/twitter 登录的移动网络应用程序。我希望应用程序通过 Spring 安全的记住我功能记住登录,以便用户需要经常登录。

我有将调用 facebook 并获取将识别用户的 access_token 的部分。我可以使用登录用户

    SecurityContextHolder.getContext().setAuthentication(
        new UsernamePasswordAuthenticationToken(principal, credentials, authority));

我正在尝试使用类似的方法来添加记住我的功能

    RememberMeAuthenticationToken auth = new RememberMeAuthenticationToken(key, principal, authority);
    SecurityContextHolder.getContext().setAuthentication(auth);

虽然这会登录用户,但它不会设置记住我的 cookie。我在这里想念什么?

谢谢!

4

1 回答 1

2

尝试注入RememberMeServices接口的实现,然后尝试做:

rememberMeServices.loginSuccess(request, response, auth);

确保_spring_security_remember_me请求中存在该参数。

于 2013-04-16T16:11:37.183 回答