Commit Graph

297 Commits

Author SHA1 Message Date
ErickSkrauch
3646bfcb64 Fixes ACCOUNTS-54A. Include deleted applications in the lookup for exists applications. 2018-11-11 13:48:23 +03:00
ErickSkrauch
262142a835 Disable csrf cookies for api 2018-07-11 01:38:48 +03:00
ErickSkrauch
c0aa78d156 Implemented WebHooks delivery queue.
Completely removed usage of the RabbitMQ. Queue now based on Redis channels.
Worker process now extracted as separate docker container.
Base image upgraded to the 1.8.0 version (PHP 7.2.7 and pcntl extension).
2018-07-08 18:20:19 +03:00
ErickSkrauch
02ea7346a8 Implemented PHP-CS-Fixer support 2018-04-17 23:47:25 +03:00
ErickSkrauch
4ee8544355 Fix 403 error on not exists application.
Remove countUsers from minecraft server application type.
2018-03-25 22:21:22 +03:00
ErickSkrauch
5a8c2641c1 Replace google.com/recaptcha to recaptcha.net domain to possibly solve China troubles 2018-03-16 19:05:39 +03:00
ErickSkrauch
673429e577 Implementation of the backend for the OAuth2 clients management 2018-02-28 01:27:35 +03:00
ErickSkrauch
ddec87e3a9 Include composer.lock in the repository. Update dependencies. 2018-02-19 20:06:43 +03:00
ErickSkrauch
013ddd1b1b Добавлено экранирование # символа в QR коде 2018-01-28 13:34:27 +03:00
ErickSkrauch
c6d18f49e7 Улучшено логгирование метрик в statsd 2018-01-02 20:45:04 +03:00
ErickSkrauch
e3a99f04fe Fixes ACCOUNTS-37R 2018-01-02 20:22:56 +03:00
ErickSkrauch
120057b66c Fixes ACCOUNTS-322 2018-01-02 19:29:34 +03:00
ErickSkrauch
5649c49a57 Fixes ACCOUNTS-319 2018-01-01 17:12:15 +03:00
ErickSkrauch
40625dbef9 Упразднено использование aud и iss полей для JWT токенов 2017-12-02 22:09:17 +03:00
ErickSkrauch
9356ad24b3 Больше не игнорируем JWT InvalidSubjectException
UnauthorizedHttpException в User/Component больше не логгируется
2017-12-02 21:04:48 +03:00
ErickSkrauch
b8049e8899 Обновлены тесты для всех форм, что отправляли письма 2017-11-28 14:40:24 +03:00
ErickSkrauch
88175fea48 Отправка всех email вынесена в очередь 2017-11-28 14:33:48 +03:00
ErickSkrauch
6f7fcf9e44 Логгируем информацию о типе используемого токена при авторизации на сервере 2017-11-22 22:47:35 +03:00
ErickSkrauch
a94e7095c8 Интегрирован сбор метрик в действия с аккаунтом 2017-11-22 22:47:35 +03:00
ErickSkrauch
6ee40f3fcc Интегрирован сбор метрик в oauth2 процесс 2017-11-22 22:47:35 +03:00
ErickSkrauch
63db3adca9 Добавлена аннотация для сбора метрик из моделей Yii2 и интегрирована в формы авторизации и регистрации 2017-11-22 22:47:35 +03:00
ErickSkrauch
236f0e7d50 Интегрирован сбор метрик в sessionserver 2017-11-22 22:47:35 +03:00
ErickSkrauch
72f546c827 Добавлена запись метрики времени работы приложения 2017-11-22 22:47:35 +03:00
ErickSkrauch
47b6761f78 Теперь на этапе включения TOTP код может истечь в течение 2 периодов 2017-11-20 20:48:43 +03:00
ErickSkrauch
dab0ab4cba Тестовые данные теперь интегрируются через аспектную библиотеку 2017-11-14 20:34:16 +03:00
ErickSkrauch
867c1a2b3b Интергрирован фреймворк для поддержки аспектного программирования 2017-11-13 17:15:24 +03:00
ErickSkrauch
85d109910f Исправлена ошибка при попытке отправить сообщение в форму обратной связи, будучи залогиненным 2017-11-01 19:56:23 +03:00
ErickSkrauch
6d4d2177d0 Исправлена обработка ситуации, когда при использовании старого протокола авторизации на сервере пользователь передавал свой ник в неправильном регистре 2017-10-20 15:19:39 +03:00
ErickSkrauch
b8e445b99f Исправлена обработка ситуации, когда uuid selectedProfile при join операции передан без дефисов 2017-10-20 15:03:21 +03:00
ErickSkrauch
c7cf54f32f Не логгируем InvalidSubjectException, возникающий из-за перехода на новый формат токенов 2017-10-18 14:42:04 +03:00
ErickSkrauch
58d3fd57a8 Исправлен баг с выдачей наружу внутренних названий пермишенов 2017-10-18 02:37:01 +03:00
ErickSkrauch
18364c625f Форма восстановления пароля больше не требует решения totp 2017-10-16 00:23:31 +03:00
ErickSkrauch
c855cdb394 Добавлен запрос пароля для запроса инициализации смены email 2017-10-13 18:43:24 +03:00
ErickSkrauch
81bdb1f2af Базовая реализация реакции сервера на dummy данные. 2017-10-12 01:50:09 +03:00
ErickSkrauch
3143d2fc26 Исправлен парсинг списка скоупов, если передан массив
Fixes ACCOUNTS-2NA
2017-10-04 14:42:48 +03:00
ErickSkrauch
7a6c4c3d2b Теперь из otp secret удаляются значения, которые на письме могут быть спутаны 2017-09-30 02:41:26 +03:00
ErickSkrauch
35e7ae2447 Добавлена возможность получить права на смену ника/пароля пользователя и тесты под это дело. 2017-09-30 01:04:26 +03:00
ErickSkrauch
8e79d1dd1c Добавлено право на избегание удостоверения личности для внутренних приложений 2017-09-30 00:44:05 +03:00
ErickSkrauch
0198a3e010 Добавлена конвертация старых запросов к аккаунтам в новые 2017-09-21 20:00:13 +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
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