【发布时间】:2016-10-30 14:58:18
【问题描述】:
是否有任何理由从一台设备上注销会删除用户的所有持久登录令牌(记住我)?
以我为例,用户可以从桌面和平板电脑登录,而从桌面注销的用户不应导致平板电脑使用的记住我令牌被删除。
JdbcTokenRepositoryImpl 中的当前实现只接受用户名:
public void removeUserTokens(String username) {
getJdbcTemplate().update(removeUserTokensSql, username);
}
所以我创建了 RememberMeServices 和 PersistentTokenRepository 的自定义实现,只允许为用户删除特定系列:
public void removeUserTokens(String username, String presentedSeries) {
getJdbcTemplate().update(removeUserTokensSql, username, presentedSeries);
}
这样安全吗?
【问题讨论】:
标签: spring spring-security remember-me