【发布时间】:2011-11-12 18:00:03
【问题描述】:
我希望这个很容易修复,
我想要实现的是为消费者和管理员使用一个登录名
这是我目前在 applicationContext-security.xml 文件中的内容:
<authentication-manager alias="authenticationManager">
<!-- DAO Based Security -->
<authentication-provider>
<password-encoder hash="sha-256" />
<jdbc-user-service data-source-ref="dataSource"
users-by-username-query="SELECT A.user_name AS username, A.consumer_password AS password, A.enabled AS enabled FROM consumer A where A.user_name=?"
authorities-by-username-query="SELECT A.username as username, A.password as password, R.name as authority FROM admin A, roles R WHERE A.roles=R.id AND A.username=?"/>
</authentication-provider>
</authentication-manager>
登录对任何消费者都适用,但我无法从任何管理员帐户登录
管理员账户的sql返回:
+----------+------------------------------------------------------------------+-----------+
| username | password | authority |
+----------+------------------------------------------------------------------+-----------+
| admin | 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8 | ADMIN |
+----------+------------------------------------------------------------------+-----------+
消费者账户的sql返回:
+----------+------------------------------------------------------------------+---------+
| username | password | enabled |
+----------+------------------------------------------------------------------+---------+
| adam | 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8 | |
+----------+------------------------------------------------------------------+---------+
【问题讨论】:
标签: java spring spring-security