这是设置:我通过jetty部署了一个非常简单的grails(2.4.3)app,它使用spring安全插件来处理用户登录。它工作得非常好,除了一件我无法绕过头的东西。当我第二天早上检查时,我必须重新启动码头。
该网站仍然正常运行且未记录任何错误。事实上,甚至没人在一夜之间访问它。问题是没有用户可以登录。我检查了数据库,帐户全部启用且未过期。登录只是说用户/通行证无效。一旦我重新启动jetty(它在重启时也不会破坏数据库),登录会再次运行。
我对发生了什么感到难过。除了插件的默认设置,我没有做任何事情,应用程序是一个简单的crud应用程序,几乎只使用动态脚手架。这并不复杂。关于发生了什么的任何想法?
答案 0 :(得分:0)
我最初的猜测是,它与包含由于不使用的无效连接的连接池有关,并且由于某种原因,访问数据库的问题导致登录检查失败,并且通用"出了问题"被误报为auth失败。您可能希望查看配置数据源,以便检查池化连接以使它们保持活动状态,并在检索之前进行测试以确保它们有效。
如果不是这样,那么您应该使用我在这两篇关于修复身份验证问题的博客文章中描述的方法取得一些成功:http://burtbeckwith.com/blog/?p=2003和http://burtbeckwith.com/blog/?p=2029