Форум программистов, компьютерный форум, киберфорум
Java: Spring, Spring Boot
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105

Groovy Grails, spring security and two factor authentication

25.06.2015, 13:28. Показов 1367. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Область довольно узкая, но может кто делал подобную вещь )

Появилась цель сделать двухфакторную аутентификацию. Собственно в чем вопрос.

Имеются таблицы Role, User, UserRole - все по стандарту.
А в bootstrap.groovy имеем :

Java
1
2
3
def adminRole = new Role(authority: 'ROLE_ADMIN').save(flush: true, failOnError: true)
def adminUser = new User(username: 'admin', password: 'admin').save(flush: true, failOnError: true)
UserRole.create(adminUser, adminRole, true)
Далее, я делаю так, что после первого шага присваивалась роль "ROLE_PRE_AUTH", а после второго уже выдавались полные права, наследуюсь от GormUserDetailsService :

Java
1
2
3
4
@Override
    protected UserDetails createUserDetails(def user, Collection<GrantedAuthority> authorities) {
            return super.createUserDetails(user, PRE_AUTH_ROLES)
    }
Переопределяю фильтр, провайдера и т.д.
Если проверить саму админку, то вроде как все ок. Дальше не пускает, требует кода подтверждения.

НО в чем проблема.
Если кинуть пост-запрос на /api/login , получаем в ответ :
JSON
1
2
3
4
5
6
{
   "username": "admin",
   "roles": ["ROLE_PRE_AUTH"],
   "access_token": "p76qjfrrlm0061s5d57guojea22to0c2",
   "token_type": "Bearer"
}
Вроде как правильно, но если дальше кинуть запрос от этого токена к сервисам, которым нужны права ROLE_ADMIN, то он пускает, как будто бы он залогинен полностью, то есть с АПИ полный провал получается

Может кто-нибудь хоть направить сможет, а то я хз уже

Добавлено через 13 минут
И вот такой вопрос, как бы вы посоветовали оформить апи для двухфакторной аутентификации? (входные/выходные параметры для запросов)
Логика такая - пользователь вводит username / password, далее вводит код, который был выслан на его телефон.

Добавлено через 8 минут
И вообще, должен ли по логике выдаваться токен после первого шага?
Сейчас вот пришла идея, что если формат json-ответа изменить, не возвращать токен после первого шага, то проблема должна решиться.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.06.2015, 13:28
Ответы с готовыми решениями:

Groovy Spring Tool Suite при работе с Grails
Пытаюсь написать простейший код на Grails. Есть несколько проблем с STS. Ну или не с ней, кто знает,подскажите. Я только сегодня скачал ее...

Spring Security Plugin (Grails)
Как сброисть url после входа в систему, т.е. у меня есть ресурс на котором определенное право доступа, если нету доступа перенаправляет на...

Oauth2 authentication with spring security
Доброго времени суток, я пытаюсь сделать на своем сайте авторизацию с помощью других сервисов. На данный момент есть google, facebook и vk....

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.06.2015, 13:28
Помогаю со студенческими работами здесь

Groovy На Grails 3.3 создать приложение без моделей с одним контроллером Hello, и action "world "
Всем привет! Вот задали такое задание: На Grails 3.3 создать приложение без моделей с одним контроллером Hello, и action &quot;world...

Jetty embedded + Spring MVC + Spring Security
Добрый день. По роду работы приходилось писать на JavaSE, в том числе и сложные клиент/серверные программы. Использовал Netty, Apache...

Spring + Basic Authentication -- Retrofit 2
Всем доброго... Воюю с настройка авторизации Spring + Basic Authentication на сервере и Retrofit 2 на клиенте... Пака что...

JWT Authentication using Spring Boot
Всем привет. Имеется spring boot приложение c jwt авторизацией/аутентификацией (spring secuity). Оно работает, делал его по туториалу....

Spring. Тесты и Spring-security
Вопрос из области почему так. Есть у меня такой вот тест: @ContextConfiguration(locations =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru