企业用户名和用户名的组合在用户表中是唯一的。用户使用Spring Security进行身份验证BY用户名查询
我知道spring提供了一种为认证编写自定义查询的机制。
<bean id="authenticationDao"
class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl">
<property name="dataSource" ref bean="dataSource" />
<property name="usersByUsernameQuery">
<value>
SELECT username,password,enabled
FROM User WHERE username=? and corporateId=?
</value>
</property>
</bean>
但问题是我们在查询中有两个绑定变量而不是一个。我不知道如何在这个db结构中使用spring安全框架。 用户表的主键是UserId。是否有任何把预处理器调用认证方法之前,我可以通过用户名和corporateId组合获取userId,然后使用这个SELECT用户名,密码,启用 从用户WHERE userid =?查询。
任何帮助将非常appericated。