Commit Graph

42 Commits

Author SHA1 Message Date
ErickSkrauch
8e79d1dd1c Добавлено право на избегание удостоверения личности для внутренних приложений 2017-09-30 00:44:05 +03:00
ErickSkrauch
dd2c4bc413 Объединены сущности для авторизации посредством JWT токенов и токенов, выданных через oAuth2.
Все действия, связанные с аккаунтами, теперь вызываются через url `/api/v1/accounts/<id>/<action>`.
Добавлена вменяемая система разграничения прав на основе RBAC.
Теперь oAuth2 токены генерируются как случайная строка в 40 символов длинной, а не UUID.
Исправлен баг с неправильным временем жизни токена в ответе успешного запроса аутентификации.
Теперь все unit тесты можно успешно прогнать без наличия интернета.
2017-09-19 20:06:17 +03:00
ErickSkrauch
cb068b9dc0 Все реализации Grant'ов для oAuth перенесены в проект. Форк league/oauth2-client больше не используется 2017-09-07 22:51:07 +03:00
ErickSkrauch
46936db0a7 Fix #344 Баг при попытке зарефрешить accessToken, который окончательно сгнил 2017-08-07 14:05:42 +03:00
ErickSkrauch
411ffe0606 Переводим пробелы (по стандарту OAuth2) в наш scopes delimiter. 2017-07-13 13:44:06 +03:00
ErickSkrauch
d0a7c08b2c ReCaptcha\Validator теперь повторяет запрос к API Google, если запрос не удался 2017-05-18 17:06:01 +03:00
ErickSkrauch
0cf68a6360 Реорганизованы зависимости для ReCaptcha\Validator
Новый способ отключения проверки капчи для функциональных тестов
2017-05-18 02:09:45 +03:00
ErickSkrauch
bc3a4112eb Добавлен индекс для таблицы oauth_sessions 2017-04-15 23:01:13 +03:00
ErickSkrauch
db1d41449c Исправлена логика авторизации, чтобы не требовать отсутствия Bearer токена для случаев, когда авторизация не требуется 2017-04-04 14:59:23 +03:00
ErickSkrauch
f9842acf29 Увеличено время жизни access_token 2017-03-07 19:09:41 +03:00
ErickSkrauch
689919fc17 Логика уничтожения активных сессий вынесена в компонент User
Теперь при смене пароля и включении двухфакторной аутентификации также очищаются и сессии Minecraft
2017-02-23 02:01:32 +03:00
ErickSkrauch
b069ec630d Исправлена ошибка при попытке рефрешнуть несуществующий oauth refresh token 2017-02-05 15:26:44 +03:00
ErickSkrauch
79bbc12206 Добавлен контроллер для блокировки аккаунта
Добавлен client_credentials grant для oAuth
Рефакторинг структуры OauthScopes чтобы можно было разделить владельца прав на пользовательские и общие (машинные)
Исправлена стилистика кода, внедряются фишки PHP 7.1
2016-12-28 23:25:55 +03:00
ErickSkrauch
213782ff62 Добавлена поддержка для "внутренних" scopes, запросить которые во время oauth процесса нельзя 2016-12-26 19:17:07 +03:00
ErickSkrauch
6d4bef0549 Исправлена проверка авторизации для запроса на refresh-token 2016-12-13 01:10:05 +03:00
ErickSkrauch
b00c4ae4fc Исправлено поведение User\Component::getIdentity(), если в контроллере не было accessFilter 2016-12-11 17:58:08 +03:00
ErickSkrauch
23d079346b Проверка oAuth авторизации организована через oauth компонент и больше не завязана на реализации внутри моделей приложения 2016-11-30 12:19:10 +03:00
ErickSkrauch
422d5c4fd4 Хранилище access_token вынесено в redis
Переписана логика связи моделей для oAuth процесса
2016-11-30 02:19:14 +03:00
ErickSkrauch
4f259a9dc7 Подменены все ключевые сущности на наши 2016-11-29 23:15:56 +03:00
ErickSkrauch
5f07834f45 Исправлено поведение при обновлении устаревшего токена
Обновлена логика в компонентах для работы с ключами redis
2016-11-29 01:57:58 +03:00
ErickSkrauch
1e94cda399 Из базы удалена таблица oauth_scopes 2016-11-27 19:19:13 +03:00
ErickSkrauch
744ec9520a Используем в качестве компонента для соединения с редисом библиотеку Predis 2016-11-27 17:41:39 +03:00
ErickSkrauch
bec00df77b redirectUri может быть null 2016-11-27 00:56:13 +03:00
ErickSkrauch
f5981f1cd1 Исправлен namespace для исключений 2016-11-27 00:55:43 +03:00
ErickSkrauch
20286f1744 Все классы, отвечающие за oAuth передвинуты в компоненты API, освежён код, поправлены неймспейсы 2016-11-27 00:43:42 +03:00
ErickSkrauch
c324ebe1c6 Формируем время в DateTime для генерации JWT токенов 2016-11-04 12:23:04 +03:00
ErickSkrauch
8120e43bec Исправлен тест для AccountIdentity 2016-09-19 11:18:52 +03:00
ErickSkrauch
dd2407e347 Сконфигурировано логирование приложения 2016-09-09 00:39:00 +03:00
ErickSkrauch
6e15522140 Добавлен рейт-лимитер для запросов к hasJoined для незарегистрированных серверов 2016-09-06 20:10:42 +03:00
ErickSkrauch
34d725abe2 Перенесена логика join операции для современных серверов.
Нужно признать, что перенесена она так себе, но в будущем я обязательно это перепишу.
2016-09-03 01:54:22 +03:00
ErickSkrauch
147c84f487 Убрано лишнее звено в вызове имени исключения 2016-08-31 13:35:43 +03:00
ErickSkrauch
66e266692c Добавлен кастомный ErrorHandler для форматирования ошибок authserver'а в соответствии с ожиданиями лаунчера 2016-08-31 13:32:14 +03:00
ErickSkrauch
a48c1432c6 Реализован функционал получения информации об аккауте после выполнения oAuth авторизации 2016-08-06 16:36:24 +03:00
ErickSkrauch
26b37c2f6b Попытка реализовать отдельный компонент для oAuth авторизации в свой же API. Не тестировал, не проверял работу, просто пушнул, чтобы потом продолжить в дргуом месте. 2016-08-04 01:07:21 +03:00
ErickSkrauch
5e40ccbe49 Добавлен API вызов для получения активного Recaptcha public key 2016-08-03 15:58:12 +03:00
ErickSkrauch
bef12954bd Усовершенствован валидатор ReCaptcha и покрыт тестами 2016-08-03 15:56:08 +03:00
ErickSkrauch
681996740d При попытке запроса смены E-mail теперь происходит проверка, как давно был выполнен предыдущий запрос 2016-07-17 20:46:04 +03:00
ErickSkrauch
e756dbacd6 Токен, выписанный на сессию без запоминания должен истекать дольше времени 2016-07-17 19:54:33 +03:00
ErickSkrauch
113b9f98d8 Отрефакторен компонент User\Component
Добавлен метод getActiveSession
Добавлена логика для функции "Разлогинить всех" в форме смены пароля
2016-06-05 17:01:35 +03:00
ErickSkrauch
1945a7baec Добавлен роут и логика для обновления access_token по refresh_token'у 2016-05-31 01:03:30 +03:00
ErickSkrauch
bdc96d82c1 Реорганизована выдача JWT токенов
Добавлен механизм сохранения сессий и refresh_token
2016-05-30 02:44:17 +03:00
ErickSkrauch
44aaea2c08 Отрефакторены тесты
Удалено тестовое окружение acceptance
Удалена часть потенциально ненужных тестов
Добавлена логика для формы регистрации
Добавлена таблица для хранения ключей активации по E-mail
Добавлены тесты для формы регистрации
Реорганизован роутинг
Добавлен компонент для ReCaptcha2
2016-01-15 12:21:27 +03:00