Commit Graph

203 Commits

Author SHA1 Message Date
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
28b06d51ce Базовая реализация API для блокировки аккаунта 2016-12-26 19:17:07 +03:00
ErickSkrauch
213782ff62 Добавлена поддержка для "внутренних" scopes, запросить которые во время oauth процесса нельзя 2016-12-26 19:17:07 +03:00
ErickSkrauch
d85451567a 1.1.6-dev [skip ci] 2016-12-25 21:21:04 +03:00
ErickSkrauch
e39910b774 1.1.5 [skip ci] 2016-12-25 21:17:16 +03:00
ErickSkrauch
d9aec58198 1.1.5-dev [skip ci] 2016-12-25 16:46:38 +03:00
ErickSkrauch
d1a5ab22bf 1.1.4 [skip ci] 2016-12-25 16:45:35 +03:00
ErickSkrauch
3bde676217 #276: если система скинов недоступна, то генерируем ответ самостоятельно 2016-12-23 01:50:34 +03:00
ErickSkrauch
c029db82a1 #272: удалены все следы использование таблицы oauth_access_tokens 2016-12-23 01:32:44 +03:00
ErickSkrauch
42e427cf40 1.1.4-dev [skip ci] 2016-12-14 02:12:49 +03:00
ErickSkrauch
d492ca5c81 Подготовка к релизу 1.1.3 2016-12-14 00:35:39 +03:00
ErickSkrauch
c99d5c6b1c Добавлен проброс версии приложения в конфиг Raven 2016-12-07 23:51:01 +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
9274155cfc Отделены параметры конфигурации для приложения от параметров конфигурации необходимых контейнеров 2016-12-04 15:34:32 +03:00
ErickSkrauch
ef8bb894f0 Добавлена ENV переменная, отвечающая за dsn для соединения с sentry 2016-12-02 00:23:40 +03:00
ErickSkrauch
225f2fd3cf Первичная интеграция логирования ошибок в sentry 2016-12-01 01:16:52 +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
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
20286f1744 Все классы, отвечающие за oAuth передвинуты в компоненты API, освежён код, поправлены неймспейсы 2016-11-27 00:43:42 +03:00
ErickSkrauch
e6fa0fe6f3 Используем вызов методов AMQP либы через ... оператор 2016-11-26 14:09:15 +03:00
ErickSkrauch
bc2f1d4ce9 Добавлено запоминание client_redirect_uri при oauth авторизации 2016-11-05 18:02:46 +03:00
ErickSkrauch
eb4a89174e ? тоже больше нельзя использовать, т.к. они так же не экранируются майнкрафтом 2016-11-04 19:38:50 +03:00
ErickSkrauch
2b0023e13f Больше нельзя устанавливать ники, содержащие в себе # 2016-11-04 19:35:33 +03:00
ErickSkrauch
d3a2a37f11 Добавлена проверка, что если приходить nil uuid, то бросается IllegalArgumentException для sessionserver 2016-11-04 19:33:57 +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
6af7b4325c Добавлены тесты для MojangApi 2016-10-31 02:11:52 +03:00
ErickSkrauch
9c8600b2ad В процесс регистрации добавлена поддержка логики, когда можно перезанять ник или email, который ещё не окончил регистрацию.
Валидатор LanguageValidator убран из модели Account
2016-10-27 01:34:51 +03:00
ErickSkrauch
f3b953607d Фикс для очереди пула ников 2016-10-25 22:20:44 +03:00
ErickSkrauch
e87ccb75c7 Используем единого отправителя 2016-10-07 01:02:52 +03:00
ErickSkrauch
46c64b0180 Добавлена поддержка smtp для production через контейнер на главном сайте 2016-10-07 01:01:54 +03:00
ErickSkrauch
c511e35e4b Кэширование для схемы в продакшен режиме 2016-10-04 01:28:10 +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
78e5d3e103 Расширен функционал Yii2 QueryBuilder: теперь функционал ORDER BY FIELD встроен внутрь билдера 2016-10-02 01:21:54 +03:00
ErickSkrauch
53ca5915f7 Структура проекта окончательно загнана в Docker
Дегрейд PHP до 7.0 (всё таки без xdebug немного больно)
Дегрейд Node.js до 5.12 (на 6.5 не собирался фронт)
Упразднён app-console контейнер (он теперь живёт внутри основного php контейнера и рулится силами supervisor)
Упразднён node-dev-server (всё равно он работал плохо)
Фикс бага в ConfigLoader (не загружал config-{env} файлы)
Исправлена ошибка в LangMenu (двойной default экспорт)
Из package.json временно удалён PhantomJS
Обновлён README.md
2016-10-02 01:20:40 +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
68ce8b3fb6 Добавлена логика HasJoined для сервера авторизации Minecraft
Исправлена ошибка в JoinForm
Добавлено базовое API для общения с сервером системы скинов
2016-09-06 12:56:39 +03:00
ErickSkrauch
198e440b8d Включено кэширование в redis 2016-09-05 17:56:03 +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
9c658f5bd9 Тесты для AuthorizationForm и кастомного RequiredValidator
В модуль Authserver добавлены хелперы для логирования
Исправлена ошибка в MinecraftAccessKey
Ускорено тестирование всего приложения
2016-08-29 02:17:45 +03:00
ErickSkrauch
d37a865e14 Заменён метод генерации токена для oauth
Немного освобождены версии зависимостей
2016-08-27 00:47:14 +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
53d56d6b97 Логика генерации значения первичного ключа для строк вынесена в поведение 2016-08-21 01:22:14 +03:00
ErickSkrauch
59f51451d0 Добавлено запоминание регистрационного IP адреса 2016-08-18 02:56:05 +03:00
ErickSkrauch
c3d0490d4a Реорганизован компонент для контроллера amqp очередей в наш внешний пакет 2016-08-16 01:30:38 +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
71d9511d8e Добавлен oauth2 пермишен на запрос E-mail адреса пользователя 2016-08-03 22:05:19 +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
ed6bc672cb Написан тест для поведения beforeSave модели EmailActivation 2016-07-27 01:58:06 +03:00
ErickSkrauch
31679b84cb Упразднён контроллер PasswordProtectedController и заменён на валидатор PasswordRequiredValidator
Реорганизованы тесты для ChangeUsernameFormTest
2016-07-25 14:07:14 +03:00
ErickSkrauch
a4dad11be5 Upgrade Guzzle до 6 версии 2016-07-21 19:12:55 +03:00
ErickSkrauch
681996740d При попытке запроса смены E-mail теперь происходит проверка, как давно был выполнен предыдущий запрос 2016-07-17 20:46: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
b26ac7119c Из модели Account удалены лишние методы 2016-07-17 15:27:29 +03:00
ErickSkrauch
eb1a3703cf Генерируемые AccessTokens заменены на UUID значения 2016-06-18 16:38:15 +03:00
ErickSkrauch
8906370bb9 Образован хелпер Error, в который вынесены все коды ошибок.
Подкорректирован errorDict на фронте
2016-06-16 23:32:23 +03:00
ErickSkrauch
73d07f355a Удалён composer-asset-plugin в пользу использования нативного asset packagist registry 2016-06-16 11:00:16 +03:00
ErickSkrauch
55de1c4993 Настроен code coverage для тестов php части 2016-06-16 00:38:43 +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
50439fdaeb Реализованы формы для шагов смены E-mail адреса, покрыты unit-тестами
У EmailActivation добавлено поле $_data и дописано поведение для работы с ним
Упрощено подключение фикстур для EmailActivations
2016-05-16 01:33:19 +03:00
ErickSkrauch
ecd92b8fda Добавлена поддержка запоминания языка для аккаунта
Обновлена минимальная версия Yii2
Удалено немного хлама от Yii2 Advanced
Исправлены некоторые тесты
2016-05-13 12:03:00 +03:00
ErickSkrauch
184ff02240 Изменёна кодировка столбца username в usernames_history для организации бинарного поиска
Из Account вынесена логика аутентификации в дочерний AccountIdentity
Исправлена логика валидации при вызове на неизменённом нике для формы смены ника
2016-05-12 11:50:30 +03:00
ErickSkrauch
2a4da87fd5 Реализована форма восстановления пароля от аккаунта
Логика проверки пароля вынесена в отдельный валидатор
В composer.json докинута зависимость от php7
2016-05-12 01:13:33 +03:00
ErickSkrauch
15922ba02e Немного приемственности в именовании сущностей 2016-05-10 23:28:04 +03:00
ErickSkrauch
c6547b6540 Добавлен action для формы восстановления пароля 2016-05-10 23:25:04 +03:00
ErickSkrauch
a29cb76cbf Образован trait AccountFinder для поиска пользователя по его нику\мылу
Модель EmailActivation теперь умеет автоматически создавать своих правильных потомков по соответствующему типу
Добавлена форма восстановления пароля и её обработчик (без контроллера)
2016-05-10 22:40:06 +03:00
ErickSkrauch
479f633d3f Добавлена защита от регистрации на сервисы 10-минутной почты 2016-05-01 19:43:28 +03:00
ErickSkrauch
cba769a1ec В проект внедрён RabbitMQ.
Контроллер для работы с RabbitMQ научился создавать типизированные аргументы для $body
Добавлена таблица с историей ников
Добавлена таблица Mojang ников
Добавлена проверка активированности аккаунта в AccountsController
2016-04-23 21:44:10 +03:00
ErickSkrauch
d2c064ac88 Первичная реализация компонентов RabbitMQ в проекте 2016-04-12 00:46:44 +03:00
ErickSkrauch
8b06adb7e8 Написал простецкую обёртку над Mojang API (пока только метод запроса uuid по нику).
Зафиксировал минорные версии для библиотек Composer
2016-03-22 00:22:17 +03:00
SleepWalker
d8a2cc21b8 Merge branch 'profile' 2016-03-21 20:28:18 +02:00
ErickSkrauch
ddb5fd813c Поправлено поведение для проверки возможности обратного редиректа на сайты с его фиксированным значением 2016-03-20 17:39:09 +03:00
ErickSkrauch
e67257b8aa Реализована форма смены ника пользователя
Добавлена базовая форма с запросом пароля
Валидация ника и email адреса вынесены из формы регистрации в модель аккаунта
Отрефакторен тест формы регистрации
Добавлены тесты для модели аккаунта
2016-03-20 02:25:26 +03:00
SleepWalker
e60a4783c1 Merge branch 'master' into profile 2016-03-16 08:04:06 +02:00
ErickSkrauch
b9ee667829 Первичная реализация формы отправки нового письма с активацией аккаунта, чуть-чуть рефакторинга тестов 2016-03-13 02:19:00 +03:00
ErickSkrauch
d9a218e075 Добавлено запоминание последнего изменения пароля, удалено поле auth_key, поправлена загрузка фикстур для функциональных тестов 2016-03-12 00:55:46 +03:00
ErickSkrauch
5c056710bc Добавлена страница с отправкой письма для восстановления пароля от аккаунта 2016-02-28 00:26:13 +03:00
ErickSkrauch
93a94c656b Добавлена форма смены пароля и её тесты 2016-02-27 01:22:09 +03:00
ErickSkrauch
601f0a290b Изменён алгоритм авторизации на использование jwt токенов 2016-02-23 01:22:04 +03:00
ErickSkrauch
1c6ba30abf Протестирована логика подписи access_token и refresh_token, добавлены базовые скоупы, подчищен проект 2016-02-23 00:49:46 +03:00
ErickSkrauch
f5f93ddef1 Реализована логика oAuth авторизации приложений, добавлен Redis, удалены лишние тесты, пофикшены старые. 2016-02-14 20:50:10 +03:00
ErickSkrauch
7e90f1838e Код модели подтверждения через email теперь является первичным ключом тамблицы
Реализована форма подтверждения email, обмазана тестами
Слегка отрефакторена форма регистрации и авторизации в пользу выноса части логики в общего родителя
Проект зачищен от стандартных тестовых параметров
Пофикшены методы доступа к API
2016-01-21 00:14:29 +03:00
ErickSkrauch
44aaea2c08 Отрефакторены тесты
Удалено тестовое окружение acceptance
Удалена часть потенциально ненужных тестов
Добавлена логика для формы регистрации
Добавлена таблица для хранения ключей активации по E-mail
Добавлены тесты для формы регистрации
Реорганизован роутинг
Добавлен компонент для ReCaptcha2
2016-01-15 12:21:27 +03:00
ErickSkrauch
45c31dfbbe Добавлено поле username в модель Account, скорретирована форма входа и её тесты 2016-01-04 18:31:14 +03:00
ErickSkrauch
7b650e2654 Описана базовая миграция, добавлена модель аккаунта, добавлена модель авторизации, написаны первичные тесты для этой модели, добавлен модуль авторизации, настроен базовый контроллер. Короче много чего сделано 2016-01-03 03:18:37 +03:00
ErickSkrauch
841303b8ab Инициализировано Yii2 приложение, выпилены лишние части, накинуты чуточку нужных 2016-01-02 16:43:18 +03:00