Spring安全性中的身份验证出错

时间:2016-05-30 06:05:49

标签: java sql spring-mvc

我在Spring MVC中为用户和管理员登录Web应用程序创建了一个表单 我在Spring MVC中有以下配置文件:

<authentication-manager>
    <authentication-provider>
        <user-service>
            <user name="user1" password="12345" authorities="ROLE_USER" />
            <user name="admin1" password="12345" authorities="ROLE_USER, ROLE_ADMIN" />
        </user-service>
    </authentication-provider>



    <!-- authentication from database -->
    <authentication-provider>
        <jdbc-user-service data-source-ref="myDataSource"
            users-by-username-query="select username,password from [Simplehr].[dbo].[USERS] where username=?"
            authorities-by-username-query="Select username, concat('ROLE_',user_role) user_role from user_roles where username=?" />
    </authentication-provider>

</authentication-manager>

但是当我运行应用程序时,我看到登录失败的错误:

  

PreparedStatementCallback;错误的SQL语法[选择用户名,密码   来自[Simplehr]。[dbo]。[USERS]其中username =?];嵌套异常是   java.sql.SQLException:列索引3无效。

但是当我在SQLserver中运行SQL语句时,它可以工作。

0 个答案:

没有答案