Commit Graph

358 Commits

Author SHA1 Message Date
ErickSkrauch
dd2c4bc413 Объединены сущности для авторизации посредством JWT токенов и токенов, выданных через oAuth2.
Все действия, связанные с аккаунтами, теперь вызываются через url `/api/v1/accounts/<id>/<action>`.
Добавлена вменяемая система разграничения прав на основе RBAC.
Теперь oAuth2 токены генерируются как случайная строка в 40 символов длинной, а не UUID.
Исправлен баг с неправильным временем жизни токена в ответе успешного запроса аутентификации.
Теперь все unit тесты можно успешно прогнать без наличия интернета.
2017-09-19 20:06:17 +03:00
ErickSkrauch
928b3aa7fc Исправлена инициализация ChangeUsernameForm в форме подтверждения E-mail 2017-09-07 22:51:14 +03:00
ErickSkrauch
1169097adb Форма смены ника теперь принимает аккаунт через конструктор 2017-09-07 22:51:14 +03:00
ErickSkrauch
cb068b9dc0 Все реализации Grant'ов для oAuth перенесены в проект. Форк league/oauth2-client больше не используется 2017-09-07 22:51:07 +03:00
ErickSkrauch
33148a5ac7 Логика oauth процесса вынесена в отдельный класс 2017-09-07 22:21:13 +03:00
ErickSkrauch
2c08130f4e Поле token в контексте otp токенов переименовано в totp 2017-09-07 02:37:52 +03:00
ErickSkrauch
549db30b2b Обновлён Spomky-Labs/otphp до 9.0.2 версии 2017-08-08 20:18:44 +03:00
ErickSkrauch
5480e3c8ef Исправлен рендеринг QR кода для пользователей с короткими username или email 2017-08-08 02:08:34 +03:00
ErickSkrauch
9a852e8052 Рендерим SVG QR код без фиксации его размера, т.к. посчитать правильное разрешение в момент подготовки рендерера не известен размер матрицы 2017-08-08 00:56:24 +03:00
ErickSkrauch
46936db0a7 Fix #344 Баг при попытке зарефрешить accessToken, который окончательно сгнил 2017-08-07 14:05:42 +03:00
ErickSkrauch
f75c241c5f Не экранируем символы html символы в qr коде, т.к. они всё таки не должны быть экранированы 2017-08-03 14:50:48 +03:00
ErickSkrauch
ec9da1709b Теперь в поле qr запроса /api/two-factor-auth возвращается строка с svg без base64, начинающаяся с data:image/svg+xml, 2017-08-03 03:02:51 +03:00
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
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
ebf4947c37 Обновлена версия Codeception (там поправили баг с анонимными классами)
Переписаны тесты для базовой формы с кодовым доступом
В базовую форму кодового доступа добавлена проверка на истечение кода
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
SleepWalker
75a0811488 Do not request password till newPassword and newRePassword are valid 2016-05-02 13:11:10 +03:00
ErickSkrauch
45b1f43d09 Добавлено поле для разлогивания всех авторизованных устройств при смене пароля (пока без имплементации) 2016-04-25 00:30:10 +03:00
ErickSkrauch
cba769a1ec В проект внедрён RabbitMQ.
Контроллер для работы с RabbitMQ научился создавать типизированные аргументы для $body
Добавлена таблица с историей ников
Добавлена таблица Mojang ников
Добавлена проверка активированности аккаунта в AccountsController
2016-04-23 21:44:10 +03:00
SleepWalker
067fc1d3d6 Добавил эксепшен в случае утсутствия мыла.
З.Ы. Туда бы di в тот класс... :)
2016-04-15 07:06:21 +03:00
ErickSkrauch
a69cd2da2c Исправлен баг с валидатором ника в форме смены никнейма 2016-04-15 02:01:01 +03:00
SleepWalker
d8a2cc21b8 Merge branch 'profile' 2016-03-21 20:28:18 +02:00
ErickSkrauch
b277f48785 Отрефакторены тесты для форм 2016-03-20 23:33:09 +03:00
ErickSkrauch
951b6928a2 Базовые модели перенесены в отдельное простраинство имён
Поправлены именования классов (хз, почему оно прежде работало)
2016-03-20 02:33:49 +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
6b04860f0e Добавлена передача email при входе в неактивированный аккаунт 2016-03-13 21:46:22 +03:00
ErickSkrauch
7343a3b506 Подрефакторена форма отправки нового письма с активацией аккаунта, дописаны юнит и функциональные тесты 2016-03-13 21:24:49 +03:00
ErickSkrauch
b9ee667829 Первичная реализация формы отправки нового письма с активацией аккаунта, чуть-чуть рефакторинга тестов 2016-03-13 02:19:00 +03:00
ErickSkrauch
81d4399bdd Добавлен проброс дополнительных данных на фронт в методе account/current 2016-03-12 01:02:52 +03:00
ErickSkrauch
d9a218e075 Добавлено запоминание последнего изменения пароля, удалено поле auth_key, поправлена загрузка фикстур для функциональных тестов 2016-03-12 00:55:46 +03:00
ErickSkrauch
7e2247ccb5 Добавлена инфомарция по получателю для формы регистрации 2016-03-01 01:02:06 +03:00
ErickSkrauch
478acde42a Конфиг отправителя для почты вынесен в отдельный параметр 2016-02-29 23:47:56 +03:00
SleepWalker
0e9be3dfb8 Рендеринг списка скоупов на oauth/permissions 2016-02-29 20:16:33 +02:00
ErickSkrauch
298f57841f Исправлено поведение формы регистрации 2016-02-28 15:08:00 +03:00
ErickSkrauch
2580119180 Добавлена ошибка для неактивированных аккаунтов при попытке логина 2016-02-28 00:50:49 +03:00
ErickSkrauch
5c056710bc Добавлена страница с отправкой письма для восстановления пароля от аккаунта 2016-02-28 00:26:13 +03:00
SleepWalker
af2580795a Исправил ошибку с undefined вместо значений полей запросов через service/request 2016-02-27 21:26:08 +02:00
ErickSkrauch
d1cdb847e0 Добавил генерацию jwt токена для формы подтверждения регистрации 2016-02-27 01:37:55 +03:00
ErickSkrauch
93a94c656b Добавлена форма смены пароля и её тесты 2016-02-27 01:22:09 +03:00
SleepWalker
86c63f8724 Суппорт jwt на фронте 2016-02-26 08:28:26 +02:00
ErickSkrauch
179d610eef Контроллер Users переименован в Accounts 2016-02-26 01:45:21 +03:00
ErickSkrauch
d9987a3185 Добавлен экшен для получения инфы о текущем аутентифицированном пользователе 2016-02-24 01:34:01 +03:00
ErickSkrauch
1fff80c7e8 Поправлена ссылка на форму регистрации 2016-02-24 01:20:10 +03:00
ErickSkrauch
8583edbb92 Все контроллеры переведены на использование jwt токенов 2016-02-24 01:15:04 +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