⚡️ #yiisoftUser
В пакете Yii User в конфигурации класса
Сброс состояния необходим для долгоживущих приложений, работающих в event-loop (RoadRunner, Swoole и др.).
В пакете Yii User в конфигурации класса
CurrentUser
добавлен сброс состояния: сбрасывается текущая идентичность пользователя (PR).Сброс состояния необходим для долгоживущих приложений, работающих в event-loop (RoadRunner, Swoole и др.).
⚡️ Практически во всех пакетах добавлен ежедневный запуск тестов через GitHub Workflow.
#yiisoftCacheWincache #yiisoftView #yiisoftDi #yiisoftStrings #yiisoftRbacPhp #yiisoftYiiConsole #yiisoftCache #yiisoftDb #yiisoftRbac #yiisoftYiiAuthClient #yiisoftYiiGii #yiisoftViewTwig #yiisoftYiiWeb #yiisoftDbMssql #yiisoftDbOracle #yiisoftLog #yiisoftYiiDebug #yiisoftDbSqlite #yiisoftDbPgsql #yiisoftDbMysql #yiisoftEventDispatcher #yiisoftI18n #yiisoftYiiEvent #yiisoftYiiDbMigration #yiisoftValidator #yiisoftUser #yiisoftTranslatorMessageGettext #yiisoftSecurity #yiisoftMiddlewareDispatcher #yiisoftMutex #yiisoftNetworkUtilities #yiisoftProfiler #yiisoftProxy #yiisoftRequestBodyParser #yiisoftRouterFastroute #yiisoftInjector #yiisoftCacheApcu #yiisoftAuthJwt #yiisoftAuth #yiisoftAssets #yiisoftArrays #yiisoftAliases #yiisoftDemoApi #yiisoftDemo #yiisoftDataResponse #yiisoftData #yiisoftCsrf #yiisoftCookies #yiisoftConfig #yiisoftCacheMemcached #yiisoftCacheFile #yiisoftHttp #yiisoftHtml #yiisoftFiles #yiisoftFactory #yiisoftErrorHandler #yiisoftLogTargetDb #yiisoftLogTargetEmail #yiisoftLogTargetFile #yiisoftRequestModel #yiisoftRbacSpiralDb #yiisoftRateLimiter #yiisoftPackageTemplate #yiisoftMutexRedis #yiisoftMutexPdoPgsql #yiisoftMutexPdoOracle #yiisoftMutexFile #yiisoftMutexPdoMysql #yiisoftTranslatorFormatterSimple #yiisoftTranslatorFormatterIntl #yiisoftTranslatorExtractor #yiisoftTranslator #yiisoftTestSupport #yiisoftSession #yiisoftRouter #yiisoftRequirements #yiisoftTranslatorMessageDb #yiisoftTranslatorMessagePhp #yiisoftVarDumper #yiisoftWidget #yiisoftYiiBootstrap5 #yiisoftYiiBulma #yiisoftYiiCycle #yiisoftYiiDataview #yiisoftYiiDebugApi #yiisoftYiiDebugViewer #yiisoftMailerSwiftmailer #yiisoftMailer #yiisoftLogTargetSyslog #yiisoftJson #yiisoftForm #yiisoftYiiWidgets #yiisoftYiiView #yiisoftYiiSwagger #yiisoftYiiSentry
#yiisoftCacheWincache #yiisoftView #yiisoftDi #yiisoftStrings #yiisoftRbacPhp #yiisoftYiiConsole #yiisoftCache #yiisoftDb #yiisoftRbac #yiisoftYiiAuthClient #yiisoftYiiGii #yiisoftViewTwig #yiisoftYiiWeb #yiisoftDbMssql #yiisoftDbOracle #yiisoftLog #yiisoftYiiDebug #yiisoftDbSqlite #yiisoftDbPgsql #yiisoftDbMysql #yiisoftEventDispatcher #yiisoftI18n #yiisoftYiiEvent #yiisoftYiiDbMigration #yiisoftValidator #yiisoftUser #yiisoftTranslatorMessageGettext #yiisoftSecurity #yiisoftMiddlewareDispatcher #yiisoftMutex #yiisoftNetworkUtilities #yiisoftProfiler #yiisoftProxy #yiisoftRequestBodyParser #yiisoftRouterFastroute #yiisoftInjector #yiisoftCacheApcu #yiisoftAuthJwt #yiisoftAuth #yiisoftAssets #yiisoftArrays #yiisoftAliases #yiisoftDemoApi #yiisoftDemo #yiisoftDataResponse #yiisoftData #yiisoftCsrf #yiisoftCookies #yiisoftConfig #yiisoftCacheMemcached #yiisoftCacheFile #yiisoftHttp #yiisoftHtml #yiisoftFiles #yiisoftFactory #yiisoftErrorHandler #yiisoftLogTargetDb #yiisoftLogTargetEmail #yiisoftLogTargetFile #yiisoftRequestModel #yiisoftRbacSpiralDb #yiisoftRateLimiter #yiisoftPackageTemplate #yiisoftMutexRedis #yiisoftMutexPdoPgsql #yiisoftMutexPdoOracle #yiisoftMutexFile #yiisoftMutexPdoMysql #yiisoftTranslatorFormatterSimple #yiisoftTranslatorFormatterIntl #yiisoftTranslatorExtractor #yiisoftTranslator #yiisoftTestSupport #yiisoftSession #yiisoftRouter #yiisoftRequirements #yiisoftTranslatorMessageDb #yiisoftTranslatorMessagePhp #yiisoftVarDumper #yiisoftWidget #yiisoftYiiBootstrap5 #yiisoftYiiBulma #yiisoftYiiCycle #yiisoftYiiDataview #yiisoftYiiDebugApi #yiisoftYiiDebugViewer #yiisoftMailerSwiftmailer #yiisoftMailer #yiisoftLogTargetSyslog #yiisoftJson #yiisoftForm #yiisoftYiiWidgets #yiisoftYiiView #yiisoftYiiSwagger #yiisoftYiiSentry
⚡️ #yiisoftUser
Исправлена ошибка в Yii User: попытка аутентификации в
Исправлена ошибка в Yii User: попытка аутентификации в
CookieLoginMiddleware
теперь происходит не каждый запрос, а только в случае, когда пользователь не аутентифицирован (PR).⚡️ #yiisoftUser
Навели красоту в пакете Yii User: добавили/улучшили doc-блоки, причесали все служебные файлы, немного отрефакторили тесты (PR).
Навели красоту в пакете Yii User: добавили/улучшили doc-блоки, причесали все служебные файлы, немного отрефакторили тесты (PR).
⚡️ #yiisoftUser
В пакете Yii User доработали функционал гостевой идентичности (PR, PR):
- добавили интерфейс гостевой идентичности
- добавили интерфейс фабрики гостевой идентичности
Теперь можно в приложении сделать свою реализацию новых интерфейсов и, например, использовать несколько классов гостевой идентичности или добавить к ним идентификаторы.
В пакете Yii User доработали функционал гостевой идентичности (PR, PR):
- добавили интерфейс гостевой идентичности
GuestIdentityInterface
, который реализуется финальным классом GuestIdentity
;- добавили интерфейс фабрики гостевой идентичности
GuestIdentityFactoryInterface
и его реализацию GuestIdentityFactory
.Теперь можно в приложении сделать свою реализацию новых интерфейсов и, например, использовать несколько классов гостевой идентичности или добавить к ним идентификаторы.
⚡️ #yiisoftUser
Изменили интерфейс
- удалили метод
- добавили метод
Изменили интерфейс
CookieLoginIdentityInterface
в Yii User (PR):- удалили метод
getCookieLoginDuration()
;- добавили метод
shouldLoginByCookie()
, возвращающий булево значение, которое определяет нужно ли добавлять куки для данного пользователя.⚡️ #yiisoftUser
В пакете Yii User в куку для аутентификации добавили информацию о сроке действия токена и установили срок жизни куки равным сроку действия токена (PR).
Так как куку можно легко поправить в браузере, то в приложении нужно использовать один из двух вариантов:
1) кодировать куку (например, как это сделано в демо веб-приложения: мидлварь + её конфигурация);
2) дополнительно сохранять срок действия токена аутентификации на сервере и использовать его для проверки.
В пакете Yii User в куку для аутентификации добавили информацию о сроке действия токена и установили срок жизни куки равным сроку действия токена (PR).
Так как куку можно легко поправить в браузере, то в приложении нужно использовать один из двух вариантов:
1) кодировать куку (например, как это сделано в демо веб-приложения: мидлварь + её конфигурация);
2) дополнительно сохранять срок действия токена аутентификации на сервере и использовать его для проверки.
⚡️ #yiisoftUser
В пакете Yii User в классе
Этот метод можно использовать в долгоживущих приложений, работающих в event-loop (RoadRunner, Swoole и др.).
В пакете Yii User в классе
CurrentUser
добавили метод clear()
, который сбрасывает состояние объекта (PR).Этот метод можно использовать в долгоживущих приложений, работающих в event-loop (RoadRunner, Swoole и др.).
⚡️ #yiisoftUser #yiisoftDemo
В пакете Yii User для класса текущего пользователя
В демо веб-приложения добавили конфигурацию
В пакете Yii User для класса текущего пользователя
CurrentUser
сессия теперь передаётся не через конструктор, а через новый метод withSession()
+ сделаны иммутабельными и переименованы существующие методы (PR):setAccessChecker()
→ withAccessChecker()
,setAuthTimeout()
→ withAuthTimeout()
,setAbsoluteAuthTimeout()
→ withAbsoluteAuthTimeout()
.В демо веб-приложения добавили конфигурацию
CurrentUser
с использованием новых методов (PR).⚡️ #yiisoftUser #yiisoftDemo
В пакете Yii User сделали несколько улучшений.
• В мидлвари
• Добавили мидлварь
• Обновили dev-зависимости и добавили тесты конфигурации пакета (PR).
Соответствующие изменения внесены в демо веб-приложения (PR).
В пакете Yii User сделали несколько улучшений.
• В мидлвари
CookieLoginMiddleware
опция addCookie
переименована forceAddCookie
, а также изменено поведение мидлвари, зависящее от этой опции (PR): теперь если опция включена, то куки будут добавляться всегда, а если отключена, то только в том случае, если метод IdentityInterface::shouldLoginByCookie()
возвращает true
.• Добавили мидлварь
LoginMiddleware
, которая позволяет автоматически залогинить пользователя, если в запросе уже есть его идентичность IdentityInterface
(PR). Как правило, аутентификацию пользователя и добавление его идентичности в запрос выполняет мидлварь \Yiisoft\Auth\Middleware\Authentication
.• Обновили dev-зависимости и добавили тесты конфигурации пакета (PR).
Соответствующие изменения внесены в демо веб-приложения (PR).