Поэтому я бьюсь головой об стену, пытаясь заставить spring-security-core-1.2.7.1 работать с Grails 2.0 ...
Я посмотрел учебник и запустил s2.Прочитайте, что новый плагин зашифровывает пароли для вас, поэтому мой загрузчик выглядит так:
def userRole = Role.findByAuthority('ROLE_USER') ?: new Role(authority: 'ROLE_USER').save(failOnError: true)
def adminRole = Role.findByAuthority('ROLE_ADMIN') ?: new Role(authority: 'ROLE_ADMIN').save(failOnError: true)
def adminUser = User.findByUsername('admin') ?: new User(
username: 'admin',
password: "admin",
enabled: true).save(failOnError: true)
def testUser = User.findByUsername('test') ?: new User(
username: 'test',
password: "test",
enabled: true).save(failOnError: true)
if (!adminUser.authorities.contains(adminRole)) {
UserRole.create adminUser, adminRole
}
if (!testUser.authorities.contains(userRole)) {
UserRole.create testUser, userRole
}
Я могу посмотреть на базу данных H2, и я вижу пользователей, их зашифрованные пароли, вижу, что роли созданы и могутвижу, что сопоставления ролей пользователей также правильно созданы.
Однако я все еще получаю: «Извините, мы не смогли найти пользователя с таким именем пользователя и паролем».при входе в систему для обоих пользователей.
Я включил log4j debug 'org.springframework.security', но все, что я действительно получаю из журналов:
2012-01-23 23:08:44,875 ["http-bio-8080"-exec-5] DEBUG dao.DaoAuthenticationProvider - Authentication failed: password does not match stored value