Проблема аутентификации с приложением Широ в Grails - PullRequest
0 голосов
/ 19 января 2010

У меня есть приложение Grails 1.2, и я хочу использовать декларативную безопасность для ограничения доступа на основе ролей. Я решил попробовать shiro, установил плагин, но когда я пытаюсь пройти аутентификацию, в заголовке появляется сообщение "Неверное имя пользователя и / или пароль" Я проверяю запись в БД, и пользователь там с паролем sha'ed. Никакие сообщения не отображаются ни в консоли, ни в файле трассировки стека. Я добавил "warn 'org.jsecurity'" в Config.groovy без результатов. Любые советы / хитрости, чтобы устранить это?

Ответы [ 3 ]

1 голос
/ 08 августа 2010

Я тоже столкнулся с этой проблемой ... как вы сохраняете пароль для пользователя?После быстрого запуска я последовал примеру на странице плагина Shiro и добавил приведенный ниже код в мой метод инициализации начальной загрузки:

import org.apache.shiro.crypto.hash.Sha512Hash

def user = new ShiroUser(username: "user123", passwordHash: new Sha512Hash("password").toHex())
user.save()

Я попытался бы войти в систему и продолжал получать ошибку при входе.Поэтому я попробовал

def user = new ShiroUser(username:'admin', passwordHash:new Sha256Hash("admin").toHex())
user.save()

После перехода с Sha512Hash на Sha256Hash ... Я смог войти!

ОБНОВЛЕНИЕ: Просто создал новое приложение с настройками плагина Shiro по умолчанию после запускаНачните'.Если вы хотите создать пользователя, вы захотите использовать Sha256Hash из коробки.Однако вы можете использовать Sha512Hash или Sha1Hash, добавив bean-компонент в файл resources.groovy для Spring.

Пример для Sha512Hash:

beans = { bean { credentialMatcher(Sha512CredentialsMatcher) { storedCredentialsHexEncoded = true } } }

0 голосов
/ 20 января 2010

Я не могу помочь с устранением неполадок Широ, но если вы ищете более мощное решение, вы можете попробовать проворный. Он основан на Shiro и предлагает множество дополнительных функций и гибкости.

Вы можете установить последнюю версию с:
grails install-plugin nimble 0.4-SNAPSHOT

шустрая документация

0 голосов
/ 20 января 2010

Вы запускали быстрый старт?Вы используете область базы данных по умолчанию?

Я бы отладил через используемое вами Царство и посмотрел, что происходит.

...