Spring security Spring security有时需要重新键入密码三次才能登录

Spring security Spring security有时需要重新键入密码三次才能登录,spring-security,Spring Security,我使用Spring3.0.5安全特性直接执行用户身份验证。我使用的是基本身份验证。每天早上,当我第一次尝试登录时,它要求我准确地输入三次正确的密码才能登录。我确信输入了正确的密码。之后,即使我尝试从其他帐户登录,问题也不会发生 有关更多信息,我的应用程序服务器使用端口8443,我在Linux主机上使用iptables将端口重定向从443设置为8443。不确定这是否有任何影响 我使用数据库作为后端进行身份验证。只有一个数据库没有集群 下面是我的配置文件 <?xml version="1.0"

我使用Spring3.0.5安全特性直接执行用户身份验证。我使用的是基本身份验证。每天早上,当我第一次尝试登录时,它要求我准确地输入三次正确的密码才能登录。我确信输入了正确的密码。之后,即使我尝试从其他帐户登录,问题也不会发生

有关更多信息,我的应用程序服务器使用端口8443,我在Linux主机上使用iptables将端口重定向从443设置为8443。不确定这是否有任何影响

我使用数据库作为后端进行身份验证。只有一个数据库没有集群

下面是我的配置文件

<?xml version="1.0" encoding="UTF-8"?>

<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                    http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd">


<global-method-security pre-post-annotations="enabled" />

<http pattern="/loggedout.jsp" security="none"/>

<http use-expressions="true">
    <intercept-url pattern="/page/**" access="isAuthenticated()" />

    <http-basic/>
    <remember-me />
</http>

<authentication-manager>
    <authentication-provider>
        <password-encoder hash="sha"/>
        <jdbc-user-service data-source-ref="dataSource"/>
    </authentication-provider>
</authentication-manager>

</beans:beans>

以前有没有人遇到过同样的问题,或者对此有什么想法

提前感谢。

您评论中的“每天早上我第一次尝试登录时都会发生这种情况”部分非常相关。我敢打赌,您正在处理连接池中的过时连接

有一种方法可以配置连接池,以便在尝试使用连接之前使用测试查询查看连接是否良好。例如,如果您使用的是DBCP,我相信该属性名为
validationQuery
。我不知道您的特定池和配置到底发生了什么,但我以前见过这种情况(this=修复自身的清晨行为),它发生在陈旧的连接上


祝你好运。:-)

您使用的是哪种身份验证后端?(例如数据库、内存、CAS等)你好,Willie Wheeler,我正在使用数据库作为后端。好的。我以前没有遇到过这个问题,但您可能需要提供更多的背景信息才能得到任何好的答案。它可以是任何数量的东西。它可能与网络有关,可能是您在数据库之间进行负载平衡,并且它们的数据不一致,等等。它总是正好是三个,或者有时是两个?它总是特定的帐户还是发生在某些帐户上?提供尽可能多的相关信息,这将帮助人们进行头脑风暴。发布配置文件可能不会有什么坏处。你好,威利,谢谢你的建议。我据此编辑了我的问题。特别是,它总是精确的三次,而不是两次,不是四次。每天早上我第一次尝试登录时都会发生这种情况。没有数据库集群。