ErickSkrauch
411ffe0606
Переводим пробелы (по стандарту OAuth2) в наш scopes delimiter.
2017-07-13 13:44:06 +03:00
ErickSkrauch
400f0e87b9
Теперь при передаче запроса как json, закодированный в теле, он автоматически парсится
2017-05-31 03:10:22 +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
6abd92e715
Merge branch 'develop' into forgot_password_captcha
...
# Conflicts:
# api/models/authentication/ForgotPasswordForm.php
2017-04-25 21:00:01 +03:00
ErickSkrauch
492a0be8fa
Исправлен путь ко view для шаблона email формы обратной связи
2017-04-25 02:40:35 +03:00
ErickSkrauch
0b61c2d819
Перенос шаблонов писем для смены E-mail в папку компонента email'ов
2017-04-24 19:31:38 +03:00
ErickSkrauch
1d5e0ce2c6
Компонент для email'ов перемещён в common
2017-04-24 19:24:15 +03:00
ErickSkrauch
c0780736ca
Все части, отвечающие за отправку E-mail вынесены в отдельный компонент
2017-04-21 01:42:39 +03:00
ErickSkrauch
00dd8e14b2
Форма запроса восстановления пароля теперь требует разгадки капчи
2017-04-18 19:08:11 +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
667c034aca
Обновлена версия Yii2, удалён костыль для учёта http/https
2017-04-04 14:40:09 +03:00
ErickSkrauch
9a38481f7d
Добавлен внутренний API для получения информации об аккаунте
2017-04-03 14:54:33 +03:00
ErickSkrauch
f9842acf29
Увеличено время жизни access_token
2017-03-07 19:09:41 +03:00
ErickSkrauch
f86be5688b
Добавлено отдельное сообщение для авторизации в Minecraft, если у аккаунта включена двухфакторная аутентификация
2017-02-23 20:15:03 +03:00
ErickSkrauch
40239b4ee5
Исправлено поведение TOTP валидатора, если Closure для timestamp возвращает null
2017-02-23 02:18:25 +03:00
ErickSkrauch
689919fc17
Логика уничтожения активных сессий вынесена в компонент User
...
Теперь при смене пароля и включении двухфакторной аутентификации также очищаются и сессии Minecraft
2017-02-23 02:01:32 +03:00
ErickSkrauch
7bf8260331
В форму включения двухфакторной аутентификации добавлено поле для фиксации времени запроса
2017-02-22 01:49:24 +03:00
ErickSkrauch
0eedfe91a2
Добавлено окно для валидации TOTP токена на формах входа и восстановления пароля
2017-02-22 01:44:23 +03:00
ErickSkrauch
0798faa7f1
Добавлена возможность указывать длину генерируемого otp_secret
2017-02-21 20:06:04 +03:00
ErickSkrauch
d262e577a6
Исправлено поведение hasJoined операции для legacy протокола
2017-02-13 13:44:14 +03:00
ErickSkrauch
b069ec630d
Исправлена ошибка при попытке рефрешнуть несуществующий oauth refresh token
2017-02-05 15:26:44 +03:00
ErickSkrauch
4695b6e724
Внедрена валидация OTP в процесс восстановления пароля
2017-01-23 23:50:13 +03:00
ErickSkrauch
e82b8aa8cf
В запрос /currect добавлен вывод состояния включённости OTP авторизации
2017-01-23 14:38:21 +03:00
ErickSkrauch
a2e1e9a805
В форму входа внедрена проверка на наличие включённой OTP авторизации
2017-01-23 14:22:20 +03:00
ErickSkrauch
6aab2592b4
Добавлены тесты для включения/отключения OTP
2017-01-23 02:07:29 +03:00
ErickSkrauch
be4c7908b2
Реализованы методы для включения\отключения двухфакторной аутентификации
2017-01-21 02:28:26 +03:00
ErickSkrauch
3b9ef7ea70
Реализован метод для запроса информации для активации двухфакторной аутентификации
...
Добавлен валидатор для TOTP кодов
2017-01-21 02:14:19 +03:00
ErickSkrauch
6f81c38b7f
Реализована форма разблокировки аккаунта
2017-01-05 00:57:04 +03:00
ErickSkrauch
b9e5e3a679
Добавлен обработчик для события блокировки аккаунта
2016-12-29 02:01:26 +03:00
ErickSkrauch
79bbc12206
Добавлен контроллер для блокировки аккаунта
...
Добавлен client_credentials grant для oAuth
Рефакторинг структуры OauthScopes чтобы можно было разделить владельца прав на пользовательские и общие (машинные)
Исправлена стилистика кода, внедряются фишки PHP 7.1
2016-12-28 23:25:55 +03:00
ErickSkrauch
1e7039c05c
Реализован контроллер для формы запроса на блокировку аккаунта
2016-12-26 19:17:07 +03:00
ErickSkrauch
45775a64af
Добавлены unit-тесты для формы блокировки аккаунта
2016-12-26 19:17:07 +03:00
ErickSkrauch
28b06d51ce
Базовая реализация API для блокировки аккаунта
2016-12-26 19:17:07 +03:00
ErickSkrauch
213782ff62
Добавлена поддержка для "внутренних" scopes, запросить которые во время oauth процесса нельзя
2016-12-26 19:17:07 +03:00
ErickSkrauch
796ca647e4
#274 : упразднена базовая модель KeyConfirmationForm, внедрён обновлённый валидатор EmailActivationKeyValidator
2016-12-23 01:22:51 +03:00
ErickSkrauch
07735a0eed
#274 : переработан валидатор EmailActivationKeyValidator
2016-12-23 00:21:05 +03:00
ErickSkrauch
6d4bef0549
Исправлена проверка авторизации для запроса на refresh-token
2016-12-13 01:10:05 +03:00
ErickSkrauch
f2e6df4022
Исправлено передение авторизатора для OAuth процесса
2016-12-12 00:07:39 +03:00
ErickSkrauch
b00c4ae4fc
Исправлено поведение User\Component::getIdentity(), если в контроллере не было accessFilter
2016-12-11 17:58:08 +03:00
ErickSkrauch
8570cfcbfa
Обновление версии компонента для отправки логов в sentry
2016-12-07 23:22:49 +03:00
ErickSkrauch
4623063074
Merge branch 'develop' into sentry
2016-12-07 21:36:49 +03:00
ErickSkrauch
a8c7118e38
Добавлен Helper для AMQP, который собирает все поступающие сообщения и предоставляет методы для проверки созданных сообщений
...
Исправлен баг в форме ChangeUsernameForm
Исправлен баг с конфигурацией тестов, который не позволял правильно проводить проверки на существование\несуществование моделей
Добавлена поддержка передачи хоста Redis через env переменные в тестах
2016-12-04 19:56:49 +03:00
ErickSkrauch
ffd4a9000f
Реализовано кэширование ответа /api/options
2016-12-02 11:38:53 +03:00
ErickSkrauch
0a0cca0834
Добавлен компонент для кэшиования ответа на уровне nginx
2016-12-02 11:38:35 +03:00
ErickSkrauch
225f2fd3cf
Первичная интеграция логирования ошибок в sentry
2016-12-01 01:16:52 +03:00
ErickSkrauch
5de6fa91c8
Удалён лишний компонент ApiNormalizer
2016-11-30 20:57:30 +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
49fb2efc0c
Не логируем http исключения
2016-11-20 20:37:08 +03:00
ErickSkrauch
7249323ec4
В dev режиме больше не бутстрапаем gii
2016-11-20 20:32:54 +03:00
ErickSkrauch
5c02b54010
Обновлена версия amqp controller, удалён gii, очередь событий аккаунтов переведена в устойчивый режим
2016-11-15 22:45:30 +03:00
ErickSkrauch
bfbcf141ee
Больше не возвращаем shouldChangePassword
2016-11-14 20:14:10 +03:00
ErickSkrauch
bc2f1d4ce9
Добавлено запоминание client_redirect_uri при oauth авторизации
2016-11-05 18:02:46 +03:00
ErickSkrauch
fe4e62af39
YII_DEBUG всегда получалось true
2016-11-05 02:53:53 +03:00
ErickSkrauch
a7822bf0f1
Уменьшаем уровень логирования для запросов к authserver и sessionserver
2016-11-05 02:53:25 +03:00
ErickSkrauch
d3a2a37f11
Добавлена проверка, что если приходить nil uuid, то бросается IllegalArgumentException для sessionserver
2016-11-04 19:33:57 +03:00
ErickSkrauch
c324ebe1c6
Формируем время в DateTime для генерации JWT токенов
2016-11-04 12:23:04 +03:00
ErickSkrauch
93f8d170dc
Более точное условие для автоматической смены пароля в форме входа
2016-11-02 00:04:10 +03:00
ErickSkrauch
b6b579b721
Метод save на модели Accounts теперь вызывается без аргумента false, т.к. из модели были удалены валидаторы
2016-11-02 00:02:58 +03:00
ErickSkrauch
3cce2c9bd1
Переименован класс валидатора пароля
2016-11-01 23:59:43 +03:00
ErickSkrauch
91df81f97d
Образован валидатор EmailValidator
2016-11-01 23:57:42 +03:00
ErickSkrauch
94a8e21f27
Образован валидатор UsernameValidator
2016-11-01 23:27:38 +03:00
ErickSkrauch
3b56f3c418
Фиксы после инспекции кода новым инспектором в PHPStorm
...
В некоторых формах отключена валидация при сохранении модели аккаунта
2016-11-01 19:36:39 +03:00
ErickSkrauch
9c8600b2ad
В процесс регистрации добавлена поддержка логики, когда можно перезанять ник или email, который ещё не окончил регистрацию.
...
Валидатор LanguageValidator убран из модели Account
2016-10-27 01:34:51 +03:00
ErickSkrauch
8049d3c774
Фикс для формы смены ника (поломалась логика, когда ник не менялся)
2016-10-27 01:22:39 +03:00
ErickSkrauch
5a88229c2d
Создаём событие о новом нике только при успешной регистрации
2016-10-27 00:07:08 +03:00
ErickSkrauch
c828b8e1e6
Фикс ошибки в форме смены ника, когда старый ник перезатирался на этапе валидации
2016-10-25 22:33:51 +03:00
ErickSkrauch
f3b953607d
Фикс для очереди пула ников
2016-10-25 22:20:44 +03:00
ErickSkrauch
cfd8ba95ef
Отключаем валидацию для форм, где не участвуют email и username
2016-10-25 11:46:31 +03:00
ErickSkrauch
20b0076672
Удаляем уникальный индекс для поля client_token в таблице minecraft_access_keys
2016-10-25 02:43:27 +03:00
ErickSkrauch
1764fb6009
Задание параметров для рекапчи в продакшен режиме через env переменные
2016-10-24 15:14:39 +03:00
ErickSkrauch
4b6bfa15ec
Фикс бага с повторным добавлением аккаунта в authserver
2016-10-15 17:35:03 +03:00
ErickSkrauch
bafac25baf
Добавлена поддержка авторизации с передачей параметров в теле запроса + тесты под этот кейс
2016-10-15 16:07:03 +03:00
ErickSkrauch
1ff6898c43
Простые шаблоны писем для процесса смены E-mail адреса
2016-10-08 16:24:10 +03:00
ErickSkrauch
1254369d3e
На GitHub подкинули идею, как сделать поддержку http и https одновременно
2016-10-07 17:48:57 +03:00
ErickSkrauch
ad058664db
Фикс получателя для формы обратной связи
2016-10-07 17:45:06 +03:00
ErickSkrauch
862c2d467e
Продублированы роуты для https запросов, пока не ответят в https://github.com/yiisoft/yii2/issues/12691
2016-10-07 02:02:51 +03:00
ErickSkrauch
f193964ea3
Фикс переменных, отвечающих за коды для писем
2016-10-04 01:45:50 +03:00
ErickSkrauch
dea5b05014
Эти ребята теперь в игноре
2016-10-03 11:34:59 +03:00
ErickSkrauch
c162a46e62
Интегрирован шаблон для письма "забыл пароль"
2016-10-03 01:59:24 +03:00
ErickSkrauch
b67a1879fe
Обновлена версия Email Renderer
...
Добавлен компонент для настройки Email Renderer
Добавлен роут в nginx для отображения картинок из Email Renderer
2016-10-02 12:52:17 +03:00
ErickSkrauch
df1859f0c1
Реализован функционал Mojang API
...
Исправлена ошибка доступа к authserver из-за перехода на использование хостов, а не доменов
2016-10-02 01:21:54 +03:00
ErickSkrauch
8120e43bec
Исправлен тест для AccountIdentity
2016-09-19 11:18:52 +03:00
ErickSkrauch
df6d319187
Восстановлен запуск тестов
...
Загрузчик конфигов выделен в отдельный класс
authserverHost выделена в params
Исправлены некоторые common.unit тесты, т.к. наследовались не от того базового класса
2016-09-19 01:01:19 +03:00
ErickSkrauch
54485b2271
Огромный рефакторинг в пользу отказа от механизма environment и использования .env файла
...
Найдено и удалено немного мусора
2016-09-16 01:28:28 +03:00
ErickSkrauch
9d935d84cd
Интеграция письма о регистрации
2016-09-13 14:50:22 +03:00
ErickSkrauch
dd2407e347
Сконфигурировано логирование приложения
2016-09-09 00:39:00 +03:00
ErickSkrauch
d2fd803b0d
Отключаем RateLimiter для запросов, что идут с хоста старого сервера авторизации, но включаем для остальных (фикс для beforeAction)
2016-09-09 00:38:25 +03:00
ErickSkrauch
c2eee9b67d
Добавлен запрос /session/profile
2016-09-08 13:07:43 +03:00
ErickSkrauch
8eb6a595c0
Обновлены роуты в соответствие с тем, как они в итоге будут прописаны в документации
...
В nginx добавлена конфигурация, отвечающая за проксирование сессионных запросов со старого домена
Версия nginx обновлена с 1.9 до 1.11
В тестах сессионного сервера больше не используется генерация url
2016-09-07 17:56:30 +03:00
ErickSkrauch
6e15522140
Добавлен рейт-лимитер для запросов к hasJoined для незарегистрированных серверов
2016-09-06 20:10:42 +03:00
ErickSkrauch
68ce8b3fb6
Добавлена логика HasJoined для сервера авторизации Minecraft
...
Исправлена ошибка в JoinForm
Добавлено базовое API для общения с сервером системы скинов
2016-09-06 12:56:39 +03:00
ErickSkrauch
e8b5e90a91
Немного рефакторинга Join формы для учёта Legacy API
...
Добавлена поддержка чтения данных из POST запроса, если они переданы как RAW json
Исправлен StringHelper::isUuid()
2016-09-05 17:55:38 +03:00
ErickSkrauch
34d725abe2
Перенесена логика join операции для современных серверов.
...
Нужно признать, что перенесена она так себе, но в будущем я обязательно это перепишу.
2016-09-03 01:54:22 +03:00
ErickSkrauch
9371fc32ca
Перенесены тесты со старого authserver, исправлены ошибки в коде
2016-09-01 10:31:43 +03:00
ErickSkrauch
147c84f487
Убрано лишнее звено в вызове имени исключения
2016-08-31 13:35:43 +03:00
ErickSkrauch
1023eed03b
Методы в Authserver AuthenticationController прикрыты verb фильтром
2016-08-31 13:32:51 +03:00
ErickSkrauch
66e266692c
Добавлен кастомный ErrorHandler для форматирования ошибок authserver'а в соответствии с ожиданиями лаунчера
2016-08-31 13:32:14 +03:00
ErickSkrauch
9c658f5bd9
Тесты для AuthorizationForm и кастомного RequiredValidator
...
В модуль Authserver добавлены хелперы для логирования
Исправлена ошибка в MinecraftAccessKey
Ускорено тестирование всего приложения
2016-08-29 02:17:45 +03:00
ErickSkrauch
72a7f743be
Мигрирована логика блокировки аккаунтов
2016-08-22 00:09:14 +03:00
ErickSkrauch
b57b015f66
Первичное портирование логики сервера авторизации с PhalconPHP на Yii2
2016-08-21 02:23:48 +03:00
ErickSkrauch
0b67267426
Я тут писал фильтр для доступа к каким-то внутренним API запросам, но потом понял, что пока таких кейсов не будет, но логика пусть сохранится :)
2016-08-21 01:23:46 +03:00
ErickSkrauch
59f51451d0
Добавлено запоминание регистрационного IP адреса
2016-08-18 02:56:05 +03:00
ErickSkrauch
433f560f48
Мелкие улучшения для контроллера OauthController
2016-08-18 02:56:05 +03:00
ErickSkrauch
426fa7dc6e
Образован фильтр ActiveUserRule для проверки активности пользовательского аккаунта
2016-08-07 03:08:48 +03:00
ErickSkrauch
16fc1ecb8c
Добавлен action для принятия правил + тесты для него
2016-08-06 19:22:09 +03:00
ErickSkrauch
cf6c7bc88e
Добавлено поле версии принятых правил
2016-08-06 18:52:03 +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
6efbbb7098
Ререализован метод для получения инфы о конфигурации API
2016-08-03 21:47:36 +03:00
ErickSkrauch
5e40ccbe49
Добавлен API вызов для получения активного Recaptcha public key
2016-08-03 15:58:12 +03:00
ErickSkrauch
c2986445f1
В форму регистрации и форму повторной отправки Email внедрён валидатор ReCaptcha
2016-08-03 15:57:41 +03:00
ErickSkrauch
bef12954bd
Усовершенствован валидатор ReCaptcha и покрыт тестами
2016-08-03 15:56:08 +03:00
SleepWalker
327e900f2b
#148 : remove depreacted error.password_required
2016-07-28 07:44:16 +03:00
ErickSkrauch
d514ba620d
Заменил библиотеку для JWT токенов на свой форк с разнообразными исключениями, подрихтовал тесты для класса AccountIdentity
2016-07-27 16:25:40 +03:00
ErickSkrauch
c25bfeb8bc
Обновлены роуты для oAuth2 запросов по последней спеке
2016-07-27 01:11:13 +03:00
ErickSkrauch
31679b84cb
Упразднён контроллер PasswordProtectedController и заменён на валидатор PasswordRequiredValidator
...
Реорганизованы тесты для ChangeUsernameFormTest
2016-07-25 14:07:14 +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
ae3c3b88de
Добавлен обработчик для удаления сессии при логауте
2016-07-17 19:38:04 +03:00
ErickSkrauch
2063d7daa0
Добавлен файл для автокомплита в проекте, обновлены обращения к di для лучшего статического анализа
2016-07-17 19:13:40 +03:00
ErickSkrauch
dd0c4fcc9e
Добавлено событие о изменении email адреса пользователя, вызовы методов для генерации уведомлений внесены внутрь транзакции бд
2016-07-17 18:42:37 +03:00
ErickSkrauch
6d3db89140
Изменена логика для работы с очередью задач, чтобы её можно было использовать в дальнейшем в кластере серверов
2016-07-17 18:27:44 +03:00
ErickSkrauch
8906370bb9
Образован хелпер Error, в который вынесены все коды ошибок.
...
Подкорректирован errorDict на фронте
2016-06-16 23:32:23 +03:00
ErickSkrauch
4614cf8fe7
Убраны разрознености в ошибках, скорреткированы тесты
2016-06-16 22:36:52 +03:00
ErickSkrauch
912606e27f
Реализована форма обратной связи
2016-06-15 23:54:13 +03:00
ErickSkrauch
113b9f98d8
Отрефакторен компонент User\Component
...
Добавлен метод getActiveSession
Добавлена логика для функции "Разлогинить всех" в форме смены пароля
2016-06-05 17:01:35 +03:00
SleepWalker
e18f6a08b0
Merge branch 'master' into account_sessions
2016-06-04 15:59:01 +03:00
ErickSkrauch
67fa28aaa1
Удалён никому ненужный SiteController
2016-05-31 21:25:04 +03:00
ErickSkrauch
1945a7baec
Добавлен роут и логика для обновления access_token по refresh_token'у
2016-05-31 01:03:30 +03:00
ErickSkrauch
cb038c897b
Добавлены тесты для ответа сервера о истёкшем токене
...
Добавлены doc-блоки для поведений в базовом контроллере
2016-05-30 21:11:22 +03:00
ErickSkrauch
bdc96d82c1
Реорганизована выдача JWT токенов
...
Добавлен механизм сохранения сессий и refresh_token
2016-05-30 02:44:17 +03:00
ErickSkrauch
b5ed01853e
Убран валидатор на тип алгоритма хэширования пароля для формы инициализации смены E-mail адреса
2016-05-23 22:55:36 +03:00
ErickSkrauch
fe2c422621
Реализовано автоматическое обновление алгоритма хэширования пароля во время авторизации пользователя
2016-05-23 22:42:50 +03:00
SleepWalker
1b4249ecd7
#100 : password protection for email change form
2016-05-22 22:04:52 +03:00
ErickSkrauch
c34f0947ad
Форма инициализации смены E-mail адреса теперь требует ввода пароля
2016-05-22 21:36:02 +03:00
ErickSkrauch
ad42411a89
Реализован обработчик для смены языка аккаунта
2016-05-19 01:10:05 +03:00
ErickSkrauch
f99b281f30
Добавлены экшены в контроллер и 1 тест (больше не успел)
2016-05-16 11:21:12 +03:00
ErickSkrauch
50439fdaeb
Реализованы формы для шагов смены E-mail адреса, покрыты unit-тестами
...
У EmailActivation добавлено поле $_data и дописано поведение для работы с ним
Упрощено подключение фикстур для EmailActivations
2016-05-16 01:33:19 +03:00
ErickSkrauch
e2e31c3720
Логика проверки ключа из KeyConfirmationForm вынесена в отдельный валидатор
...
У EmailActivationFixture зафиксирован стандартный путь к файлу данных
2016-05-15 14:13:51 +03:00
ErickSkrauch
0ba1be27e8
Наведён порядок в моделях проекта
2016-05-14 02:47:17 +03:00