【发布时间】:2018-03-29 22:28:28
【问题描述】:
我想使用 Spring Security,但我以前从未使用过它。我想从我的表中检索用户和角色(用户、角色和 user_roles)。我已经调查了 users-by-username-query 。在所有示例中都与以下示例相同。
<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 username, role from user_roles where username =? " />
</authentication-provider>
</authentication-manager>
但我想使用 id_user 和 id_role 而不是 username 和 role。可能吗 ?我必须更改登录页面字段名称吗? 在此先感谢
【问题讨论】:
-
这里有一个很好的讨论stackoverflow.com/questions/9069019/…
-
为什么你不检索你的字段
id_user和id_role而只是在同一个查询中为它们应用别名?这可能是实现这一目标的最简单方法。我已经做过几次了:users-by-username-query=" select user.user_login as username, user.user_pwd as password, user.user_enabled as enabled from user where user.user_login=?" -
好的,如果可以像你说的那样使用我会试试的。谢谢你的回复。
-
但是我的 user_role 表没有代表角色名称的列
-
我如何通过用户名查询声明我的权限?
标签: spring spring-mvc authentication spring-boot spring-security