powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring + Spring Security
10 сообщений из 10, страница 1 из 1
Spring + Spring Security
    #38766222
Lihman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуй %ALL%

Пытаюсь постичь Spring с использованием Spring Security
если в security.xml пишу
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
<authentication-manager>
        <authentication-provider>
            <password-encoder hash="md5"/>
            <jdbc-user-service data-source-ref="dataSource"
                               users-by-username-query="SELECT u.login as username, u.password as password, u.active as enabled FROM jwcms.users u WHERE u.login = ?"
                               authorities-by-username-query="SELECT u.login as username, 'ROLE_USER' as authority FROM jwcms.users u WHERE u.login = ?" />
        </authentication-provider>
</authentication-manager>



выборка из БД по первому запросу получается такая:
usernamepasswordenabledadm80D758C876484FD19C7C124DC51F16681
по второму:
usernameauthorityadmROLE_USER
выдает
Код: xml
1.
Ошибка входа : Bad credentials



Если прописываю напрямую в security.xml
Код: xml
1.
2.
3.
4.
5.
		<authentication-provider>
			<user-service>
				<user name="user1" password="1111" authorities="ROLE_USER" />
			</user-service>
		</authentication-provider>


все работает нормально

подскажите где я накосячил?

Заранее спасибо!

С уважением, Денис
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766237
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lihman,

А так работает?
Код: xml
1.
2.
3.
4.
5.
6.
<authentication-provider>
<password-encoder hash="md5"/>
			<user-service>
				<user name="adm" password="80D758C876484FD19C7C124DC51F1668" authorities="ROLE_USER" />
			</user-service>
		</authentication-provider>



Какая БД? JDBC драйвер точно умеет 1 в Boolean конвертировать?
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766243
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы подключил исходники Spring Security и продебажил. Работы на пару минут.
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766336
Lihman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczLihman,

А так работает?
Код: xml
1.
2.
3.
4.
5.
6.
<authentication-provider>
<password-encoder hash="md5"/>
			<user-service>
				<user name="adm" password="80D758C876484FD19C7C124DC51F1668" authorities="ROLE_USER" />
			</user-service>
		</authentication-provider>



так тоже не работает

вот описание подключения к БД:
Код: xml
1.
2.
3.
4.
5.
6.
	<bean id="dataSource"
		class="org.springframework.jdbc.datasource.DriverManagerDataSource"
		p:driverClassName="${jdbc.driverClassName}" 
		p:url="${jdbc.databaseurl}"
		p:username="${jdbc.username}" 
		p:password="${jdbc.password}" />



вот jdbc.properties
Код: xml
1.
2.
3.
4.
5.
6.
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.dialect=org.hibernate.dialect.MySQLDialect
#jdbc.databaseurl=jdbc:mysql://localhost:3306/pp
jdbc.databaseurl=jdbc:mysql://localhost:3310/pp?useUnicode=true&amp;characterEncoding=UTF-8
jdbc.username=root
jdbc.password=pass



по этому же dataSource
подключаюсь к базе и работаю нормально
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766346
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lihmanтак тоже не работает


Это сужает источник проблемы до
Код: xml
1.
2.
<password-encoder hash="md5"/>
password="80D758C876484FD19C7C124DC51F1668" 


Это хэш от какого пароля?
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766351
Lihman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczLihmanтак тоже не работает


Это сужает источник проблемы до
Код: xml
1.
2.
<password-encoder hash="md5"/>
password="80D758C876484FD19C7C124DC51F1668" 


Это хэш от какого пароля?

хэш проверил по md5.cz - это именно его :)
тот что я ввожу пароль - это его хэш
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766530
Lihman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сменил пароль на "3771b57b"
хеш: 21AC4EFF527C9EEB67F8A41DF167398E

и в БД тоже самое

опытным путем нашел где косяк :(

оказывается для Спринга есть разница в хэшах
21ac4eff527c9eeb67f8a41df167398e
21AC4EFF527C9EEB67F8A41DF167398E

для него это разные хэши :(

теперь вопрос, как можно не пересоздавать базу???
можно Спрингу сказать, что надо юзать хеши в апперКейсе ?
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766561
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это не Spring, это реализация MD5 для Java. Можно свой PasswordEncoder подставить. Можно в SQL запросе преобразование в нужый Case дописать.
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766563
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://docs.spring.io/spring-security/site/docs/3.1.7.RELEASE/reference/core-services.html
В 7.3.3 описан этот сценарий. Удивительное нежелание читать мануал.
...
Рейтинг: 0 / 0
Spring + Spring Security
    #38766566
Lihman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да это я торможу :(

все решается очень просто:
Код: xml
1.
2.
3.
4.
5.
6.
        <authentication-provider>
            <password-encoder hash="md5"/>
            <jdbc-user-service data-source-ref="dataSource"
                               users-by-username-query="SELECT u.login as username, lower(u.password) as password, u.active as enabled FROM jwcms.users u WHERE u.login = ?"
                               authorities-by-username-query="SELECT u.login as username, 'ROLE_USER' as authority FROM jwcms.users u WHERE u.login = ?" />
        </authentication-provider>
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring + Spring Security
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]