我有一个 Play 2.0.4 网络应用程序,它使用 SecureSocial 允许用户通过 twitter、facebook 和 gmail 等第三方提供商登录。那时,我没有使用自己的 UsernamePasswordProvider;也许我稍后会添加它。
我需要我的用户长时间保持登录状态,可能是一周。就我而言,用户会话仅用于各种便利功能,例如自定义,因此与长期会话相关的风险肯定不如不必每次都登录的便利那么重要。
看起来当前会话存储在一个临时 cookie 中,当用户终止浏览器时该 cookie 就会消失。配置文件中有一个 sessionTimeOut 参数,但它的目的似乎是终止浏览器中长时间保持打开状态的会话。至少,当我关闭并重新打开浏览器时,即使此超时设置为很大,会话也会立即中断。
保持用户长时间登录的推荐方法是什么?