【问题标题】:Spring Security 3.0 with jdbc带有 jdbc 的 Spring Security 3.0
【发布时间】:2011-03-27 17:03:28
【问题描述】:

我读过《Spring Security 3 database authentication with Hibernate》!但我不知道我应该如何将它实现到我的项目中!

  • 我必须在哪个文档中设置数据库的密码/用户名/驱动程序/url?
  • 我有不同的列标题,例如 OPERATOR_ID/USR_ID/PASSWORD

OPERATOR_ID 应该是登录名,USR_ID 应该是角色和登录密码

拜托,也许您可​​以发布一个实现我的问题的示例?也许是为了结帐或 *.war 文件?

【问题讨论】:

标签: java hibernate spring jdbc spring-security


【解决方案1】:

我认为没有任何配置可以做到这一点。您必须实现UserDetailsService,它只有一种方法loadUserByUsername 来加载用户,并且您必须实现相同的方法才能使用hibernate 从数据库中加载用户信息。

here

【讨论】:

    【解决方案2】:

    您需要配置一个JDBCDaoImpl bean,它将数据源作为参数。如何检索数据源取决于您,您可以从应用服务器获取它或使用 Spring 的 DriverManagerDatasource 之类的东西 这是一些(伪)配置

    <bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
      <property name="driverClassName"><value>your.driver.classname</value></property>
      <property name="url"><value>yourDatabaseUrl</value></property>
      <property name="username"><value>yourUsername</value></property>
      <property name="password"><value>yourPassword</value></property>
    </bean>
    
    <bean id="dao" class="org.springframework.security.core.userdetails.jdbc.JdbcDaoImpl">
      <property name="DataSource" ref="datasource" />
     ...
    </bean>
    

    【讨论】:

      猜你喜欢
      • 2015-05-06
      • 2013-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-12
      • 2011-12-20
      • 2012-06-23
      • 2011-01-15
      相关资源
      最近更新 更多