1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/dromara-sa-token

Имя тега
Описание
Сообщение коммита
Операция
- core: - Новое: добавлен модуль `API Key`. **[Важно]** - Новое: добавлен модуль реализации `TOTP`. **[Важно]** - Переработка: переработан модуль `TempToken`, добавлен механизм обратного поиска токена по значению. **[Важно]** - Обновление: переработаны стратегии чтения и записи контекста `SaTokenContext`. **[Важно]** - Новое: добавлен модуль Mock-контекста. **[Важно]** - Удалено: удалён модуль второго уровня контекста. - Новое: добавлен пример использования в асинхронных сценариях. **[Важно]** - Новое: добавлен класс-инструмент для кодирования `Base32`. - Новое: добавлены функции обработки политики CORS для унифицированного решения задачи кросс-доменного доступа. - Новое: метод `renewTimeout` проверяет актуальность информации о токене при продлении срока действия. - Новое: глобальная конфигурация `cookieAutoFillPrefix`: автоматическое заполнение префикса токена в режиме cookie. - Новое: глобальная конфигурация `rightNowCreateTokenSession`: создание сессии токена при входе. - Улучшение: оптимизирован алгоритм получения `Token-Session`, уменьшено количество обращений к кэшу. - Новое: класс `SaLoginParameter` поддерживает конфигурацию `SaCookieConfig` для настройки параметров cookie. - Изменение: порядок регистрации фильтра проверки брандмауэра изменён на -102. - Новое: методы регистрации `hook` в брандмауэре `registerHookToFirst` и `registerHookToSecond` для более гибкого управления порядком выполнения `hook`. - плагины: - Новое: плагин `sa-token-quick-login` поддерживает аутентификацию посредством `Http Basic`. - Юнит-тесты: - Дополнено: добавлены юнит-тесты для модуля `Temp Token`. - Документация: - Дополнено: добавлен список спонсоров. - Исправлено: исправлены неверные примеры зависимостей в документации по интеграции с `Thymeleaf`. - Исправлено: исправлены ошибки описания в разделе `unionid`. - Улучшено: уточнено описание шагов единого выхода в режиме SSO. - Новое: добавлены инструкции по просмотру cookie в документации по аутентификации. - Новое: добавлены примечания к режиму работы с несколькими аккаунтами: изменение типа входа во время выполнения недопустимо. - Новое: добавлены вопросы и ответы по режиму работы с несколькими аккаунтами: как определить, какой аккаунт используется при входе. - Новое: добавлены вопросы и ответы: решение проблемы ошибок при интеграции Sa-Token с низкими версиями `SpringBoot (<2.2.0)`. - Новое: добавлены вопросы и ответы: как вернуться на предыдущую страницу после входа в систему в проектах с единой архитектурой. - Новое: добавлены вопросы и ответы: как интегрировать Sa-Token с Redis для работы в кластере. - Новое: добавлены вопросы и ответы: как настроить способ чтения токена в пользовательском фреймворке. - Новое: добавлены вопросы и ответы: причины, по которым изменение файла `hosts` может не сработать. - Новое: добавлены вопросы и ответы: как защититься от атак CSRF.- Новое: добавлен раздел "Асинхронный & Mock контекст". - Обновление: обновлен раздел "Руководство по созданию пользовательского SaTokenContext".
11.04.2025 03:38
- core: - Исправление: исправлено пустое значение указателя для `StpUtil.setTokenValue("xxx")` и `loginParameter.getIsWriteHeader()`. fix: [#IBKSM0](https://gitee.com/dromara/sa-token/issues/IBKSM0) - Исправление: значение по умолчанию для `SaDisableWrapperInfo.createNotDisabled()` изменено на -2 для обеспечения совместимости с предыдущими версиями. - Новое: добавлен плагинный механизм на основе SPI. **[Важно]** - Переработка: переработан модуль JSON-конвертации. **[Важно]** - Новое: добавлен модуль сериализации, контролирующий сериализацию `Object` и `String`. **[Важно]** - Переработка: переработан модуль фаервола, добавлен механизм hooks. **[Важно]** - Новое: добавлены проверки запрещенных символов в пути запроса, проверка Host, проверка метода запроса, проверка заголовков запроса и параметров запроса. Переработан алгоритм проверки символа перебора директорий. - Переработка: переработан модуль `SaTokenDao`, разделены операции сериализации и хранения. **[Важно]** - Переработка: переработаны классы реализации по умолчанию для `SaTokenDao`, оптимизированы внутренние механизмы. - Новое: конфигурация `isLastingCookie` теперь поддерживается в глобальной конфигурации. - Переработка: переработаны классы `SaLoginModel` и `TokenSign` на `SaLoginParameter` и `SaTerminalInfo`. **[Не совместимо с предыдущими версиями]** - Новое: добавлено поле `extraData` для расширения данных в `SaTerminalInfo`. - Новое: конфигурация `isConcurrent`, `isShare`, `maxLoginCount` и `maxTryTimes` теперь поддерживается в `SaLoginParameter`. - Новое: добавлен класс `SaLogoutParameter` для управления деталями выхода из сессии. **[Важно]** - Новое: добавлен метод `StpLogic.isTrustDeviceId` для проверки доверия устройства. - Новое: добавлены методы `StpUtil.getTerminalListByLoginId(loginId)` и `StpUtil.forEachTerminalList(loginId)` для упрощенного управления сессиями для одного аккаунта. - Обновление: конфигурация подписи параметров API теперь поддерживает пользовательские алгоритмы хэширования. - Новое: добавлено аннотирование `@SaCheckSign` для проверки подписи параметров API. - Новое: добавлен модуль подписи параметров API для поддержки нескольких приложений. **[Важно]** - Переработка: значение по умолчанию для глобальной конфигурации `is-share` изменено на false. **[Не совместимо с предыдущими версиями]** - Переработка: при удалении пользователя сессия теперь по умолчанию удаляет соответствующий объект `token-session`. - Оптимизация: оптимизированы API для выхода из сессии. - Переработка: значение по умолчанию для типа устройства при входе изменено на DEF. **[Неразрывная совместимость]** - Реконструкция: `BCrypt` помечен как `@Deprecated`. - Новое: `sa-token-quick-login` поддерживает `SpringBoot3` проекты. fix: [#IAFQNE](https://gitee.com/dromara/sa-token/issues/IAFQNE), [#673](https://github.com/dromara/Sa-Token/issues/673) - Новое: в `SaTokenConfig` добавлены конфигурации `replacedRange`, `overflowLogoutMode`, `logoutRange`, `isLogoutKeepFreezeOps`, `isLogoutKeepTokenSession`. - OAuth2: - Реконструкция: реконструирован плагин `sa-token-oauth2`, процесс регистрации аннотации-обработчика изменен на загрузку плагина SPI. - Плагины: - Новое: плагин `sa-token-serializer-features` для реализации различных схем сериализации пользовательских наборов символов. - Новое: плагин `sa-token-fastjson`. - Новое: плагин `sa-token-fastjson2`. - Новое: плагин `sa-token-snack3`. - Новое: плагин `sa-token-caffeine`. - Единичные тесты: - Новое: единичные тесты модуля `sa-token-json-test` JSON. - Новое: единичные тесты модуля `sa-token-serializer-test` сериализации. - Документация: - Новое: добавлен раздел QA "Как предотвратить конфликты при использовании одного Redis несколькими проектами?". - Улучшение: добавлены пропущенные конфигурации для модуля OAuth2. - Улучшение: улучшена документация краткого описания OAuth2. - Улучшение: улучшена документация раздела "SSO пользовательских данных синхронизации / миграции". - Исправление: добавлена документация по структуре проекта. - Новое: добавлен раздел "Параметры входа и выхода". - Улучшение: улучшены подсказки кнопки "Техническая помощь". - Новое: добавлен файл `preview-doc.bat` для запуска предварительного просмотра документации. - Улучшение: улучшена документация интеграции Redis. - Новое: добавлен пример операции поиска сессии одного пользователя. - Новое: добавлен раздел с описанием API для вынужденного выхода пользователя. - Новое: добавлен раздел с описанием пользовательских плагинов сериализации. - Другое: - Новое: добавлен `sa-token-demo/pom.xml` для быстрого импорта всех демонстрационных проектов в IDEA. - Удалено: удалены ненужные файлы `.gitignore`. - Реконструкция: реконструирован плагин `sa-token-solon-plugin`. - Новое: добавлен пример входа с помощью устройства-локатора.
21.03.2025 09:22
- core: - Новое: поддержка пользовательских свойств Cookie. исправление: [#693](https://github.com/dromara/Sa-Token/issues/693) **[важно]** - Новое: стратегия защиты от DDoS (`SaFirewallStrategy`) проверяет путь запроса на наличие в черном списке, незаконных символов и белый список. **[важно]** - Исправлено: добавлена проверка пути запроса на наличие символа ";". ссылка: [Sa-Token полная фильтрация URL](https://mp.weixin.qq.com/s/77CIDZbgBwRunJeluofPTA) **[фиксация уязвимости]** - Исправлено: исправлено проблемное поведение при автоматическом продлении сессии после входа пользователя. исправление: [#IA8U1O](https://gitee.com/dromara/sa-token/issues/IA8U1O) - Улучшено: оптимизация проверки и продления времени активности, теперь это происходит один раз за каждый запрос. - Исправлено: исправлены неверные комментарии метода `SaFoxUtil.joinSharpParam`. - Новое: модуль блокировки теперь поддерживает реальное время получение данных из базы данных. - SSO: - Улучшено: пример кода SSO теперь использует Sa-Token фильтр вместо стандартного кросс-доменного решения. - Новое: добавлен раздел "SSO интеграция — режим без SDK и проекты не на Java" в документацию. - Новое: добавлены рекомендации по обработке некоторых исключений в разделе "Различные ключи безопасности для разных клиентов SSO", исправление: [#IAFZXL](https://gitee.com/dromara/sa-token/issues/IAFZXL) - Удалено: удалены некоторые необязательные части кода в демонстрационной версии SSO. - OAuth2: - Новое: тестовая страница для клиента OAuth2. **[важно]** - Новое: реализован UnionId. **[важно]** - Новое: пример и документация для разделения серверной и клиентской частей OAuth2. **[важно]** - Новое: проверка случайного значения nonce в режиме OIDC. объединение: [pr311](https://gitee.com/dromara/sa-token/pulls/311) - Исправлено: исправлено имя метода `deleteGrantScope(String state)` на `deleteState(String state)`. - Исправлено: исправлено некорректное использование глобальной конфигурации `sa-token.oauth2-server.oidc.iss`. - Новое: добавлены методы отзыва refresh token: `revokeRefreshToken`, `revokeRefreshTokenByIndex`. - Новое: добавлено поле `createTime` для моделей `CodeModel`, `AccessTokenModel`, `RefreshTokenModel`, `ClientTokenModel` для записи времени создания данных. - Новое: добавлено поле `grantType` для моделей access token и client token для записи типа авторизации. - Новое: добавлены методы `SaOAuth2Util.getCode` и другие для более удобного получения и проверки кода авторизации. - плагины: - Новое: добавлен плагин `sa-token-freemarker` для интеграции с движком шаблонов Freemarker. исправление: [#651](https://github.com/dromara/sa-token/issues/651) **[важно]** - Новое: добавлен плагин `sa-token-spring-el` для поддержки аутентификации через SpEL выражения. исправление: [#IB3GBB](https://gitee.com/dromara/sa-token/issues/IB3GBB), исправление: [#IAIXSL](https://gitee.com/dromara/sa-token/issues/IAIXSL), исправление: [#I9P24F](https://gitee.com/dromara/sa-token/issues/I9P24F) **[важно]** - документация: - Новое: добавлен пример интеграции с MongoDB. благодарность @lilihao за предоставленный пример. объединение: [pr322](https://gitee.com/dromara/sa-token/pulls/322) **[важно]** - Новое: добавлены ссылки на видеоуроки "fox говорит о технологии". - Новое: добавлены ссылки на видеоуроки по подписям API (канал Bilibili "Grab Frog Master"). - Улучшено: добавлен кнопочный интерфейс для отправки запросов на главной странице документации. - Другое: дополнен список спонсоров и добавлены ссылки на проект Dromara. - Новое: добавлены замечания по использованию Redis в Spring Boot 3.x. исправление: [#688](https://github.com/dromara/Sa-Token/issues/688) - Новое: добавлен бейдж G-Star на сайте Gitcode. - Исправлено: исправлены примеры конфигураций OAuth2. - Новое: добавлены ссылки на аккаунты YouTube. - Новое: добавлены данные о членах команды.
01.02.2025 16:59
- Основной: - Улучшение: рефакторинг основного уровня аутентификации с использованием аннотаций, теперь поддерживаются пользовательские аннотации для аутентификации. **[Важно]** - Исправление: исправлено неправильное чтение фреймворка при отправке одноименного `Cookie` с фронта. - Плагины: - Исправление: исправлена проблема с некорректным отловом плагина `sa-token-quick-login`. - SSO: - Улучшение: оптимизация примера разделения front-end и back-end в sso-server. - Улучшение: оптимизация процесса перехода при разделении front-end и back-end в sso-server. - OAuth2: - Рефакторинг: полное рефакторинг модуля `sa-token-oauth2`. **[Важно]** **[Недопустимое обратное совместимость]** - Новое: поддержка пользовательских обработчиков `scope`. **[Важно]** - Новое: поддержка пользовательского типа `grant_type`. **[Важно]** - Новое: добавление уровней для `scope`. **[Важно]** - Новое: поддержка протокола OIDC. **[Важно]** - Новое: поддержка алгоритма генерации `openid` по умолчанию. **[Важно]** - Новое: поддержка аннотаций для аутентификации OAuth2. **[Важно]** - Исправление: добавлены правила проверки параметра `redirect_url`: запрещены символы @ и * за исключением последнего символа. Связанный [issue](https://github.com/dromara/Sa-Token/issues/529) **[Важно]** - Улучшение: улучшено описание кода и сообщения об ошибках. - Улучшение: добавлена поддержка передачи данных клиента через HTTP Basic. - Улучшение: добавлена поддержка передачи `access_token` и `client_token` через Bearer Token. - Улучшение: адаптирована поддержка маршрутов с разделением. - Новое: тип поля `scope` изменён на `List`. - Рефакторинг: выделен глобальный интерфейс стратегий `SaOAuth2Strategy`, определены некоторые стратегии создания токенов. - Новое: добавлены методы `addAllowUrls` и `addContractScopes` для упрощения кода конструктора `SaClientModel`. - Рефакторинг: выделен интерфейс `SaOAuth2Dao` для работы с базой данных. - Рефакторинг: выделен интерфейс `SaOAuth2DataLoader` для загрузки данных. - Рефакторинг: выделен интерфейс `SaOAuth2DataGenerate` для создания данных. - Рефакторинг: выделен интерфейс `SaOAuth2DataConverter` для преобразования данных. - Рефакторинг: выделен интерфейс `SaOAuth2DataResolver` для анализа данных. - Рефакторинг: рефакторинг `SaOAuth2Handle` -> `SaOAuth2ServerProcessor` для более удобного переопределения логики. - Рефакторинг: рефакторинг `PastToken` -> `LowerClientToken`. - Новое: добавлено валидирование значения `state`, повторное использование одного и того же значения `state` недопустимо. - Улучшение: улучшен `SaOAuth2Util` для более удобного вторичного использования. - Новое: добавлены новые классы ошибок, детализированы типы ошибок `ClassType`. - Улучшение: улучшены коды ошибок для `sa-token-oauth2`. - Документация: - Новое: добавлено описание структуры данных. - Новое: добавлено описание различных страниц входа для разных клиентов. - Улучшение: улучшено описание примера [хранения прав доступа в кэше]. - Новое: добавлен пример миграции из Shiro, Spring Security и JWT. **[Важно]**
28.08.2024 04:58
1
https://api.gitlife.ru/oschina-mirror/dromara-sa-token.git
git@api.gitlife.ru:oschina-mirror/dromara-sa-token.git
oschina-mirror
dromara-sa-token
dromara-sa-token