Spring Securityを使用してデータベースを介して認証しようとしているので、いくつかの例をグーグルで検索しました。それらはすべて、次のクエリのように似ています。
<authentication-manager>
<authentication-provider>
<jdbc-user-service data-source-ref="dataSource"
users-by-username-query="
select username,password, enabled
from users where username=?"
authorities-by-username-query="
select u.username, ur.authority from users u, user_roles ur
where u.user_id = ur.user_id and u.username =? "
/>
</authentication-provider>
</authentication-manager>
次のようにクエリを変更するのは間違っていますか?そうでない場合はなぜですか?
<security:authentication-manager>
<security:authentication-provider>
<security:jdbc-user-service data-source-ref="dataSource"
users-by-username-query="select login.name,login.passw from login where login.name=?"
authorities-by-username-query="select login.name, login.type from login where login.name =?"/>
</security:authentication-provider>
</security:authentication-manager>
これは悪いSQL例外を与える私の例です。