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

OSCHINA-MIRROR/iozxc-authz-spring-boot-starter

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CHANGELOG.md 11 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 02:13 06ac562

Обновление дневника [Authz]

Version 1.2.13 - 2022.9.13

Version 1.2.12 - 2022.8.30

Version 1.2.9 - 2022.8.24

Изменения

  • authz.token.token-id-bits ==> authz.token.id-bits.

Исправлено

  • Исправлены некоторые ошибки.

Версия 1.2.8 — 2022.08.23

Добавлено

  • Добавлена привязка токена к IP.

Версия 1.2.7 — 2022.08.18

Добавлено

  • Получены данные о платформе и ОС запроса, по умолчанию в настройках устройства задаётся тип платформы.
  • По умолчанию не ограничено количество устройств одного типа для входа (ранее было ограничение в 1 устройство).

Версии 1.2.5 и 1.2.6 — 2022.08.17

Исправлено

  • Исправлены некоторые ошибки.

Версия 1.2.4 — 2022.08.14

Исправлено

  • Исправлены некоторые ошибки.

Версия 1.2.3 — 2022.08.10

Исправлено

  • Исправлены некоторые ошибки.

Версия 1.2.2 — 2022.08.09

Исправлено

  • Исправлены некоторые ошибки.

Версия 1.2.1 — 2022.08.09

Добавлено

  • Дополнены все необходимые интерфейсы для входа, добавлено исключение NotLoginException.
  • Теперь можно использовать функции входа и обновления токена в среде, отличной от веб.
  • Изменены описания некоторых интерфейсов.

Версия 1.2.0 — 2022.08.08

Добавлено

  • Поддержка OpenAuth [OAuth2.0]:

    • операции авторизации, проверки и регистрации клиента с помощью AuHelper.OpenAuth;
    • аннотация @OAuthScope для методов и контроллеров, требующая соответствующих разрешений для доступа;
    • аннотация @OAuthScopeBasic, аналогичная @OAuthScope, но с дополнительным базовым разрешением доступа, настраиваемым в yml.
  • Переписан интерфейс dashboard на Vue, добавлены новые функции и улучшен внешний вид.

  • Добавлены некоторые интерфейсы конфигурации для ограничения количества устройств входа:

    • теперь можно установить ограничение на количество устройств входа для каждого пользователя по userId;
    • теперь можно установить ограничение на количество устройств входа для каждой роли пользователя.
    • AuHelper.addDeviceTypesTotalLimit, AuHelper.getOrUpdateDeviceTypesTotalLimit, AuHelper.changeMaximumDeviceTotal, AuHelper.changeMaximumSameTypeDeviceCount.

  • Оптимизирован код фреймворка.

  • Улучшена скорость входа и проверки.

  • Оптимизирована логика вторичного синхронного кэша и первичного кэша по умолчанию.

  • Реорганизован класс Device.

  • Введён класс RequestDetails, который не попадает в область синхронного кэширования.

Удалено

  • Удалён класс UserDevicesDictByHashMap, теперь используется общий класс UserDevicesDictByCache, где Cache — это L1Cache или L2Cache.

Версия 1.1.9 — 2022.07.16

Добавлено

  • Теперь программа может работать без ключа.
  • Ключи токенов должны соответствовать длине указанного алгоритма подписи.
  • Добавлен алгоритм сжатия токенов.
  • Можно настроить алгоритмы сжатия и подписи.
  • Представлен режим краткости токенов.
  • Если cn.omisheep.authz.core.auth.PermLibrary не реализован, выводится предупреждение.

Версия 1.1.8 — 2022.07.14

Исправлено

  • Исправлено получение IP в прокси-среде.
  • Исправлена ошибка в журнале.

Версия 1.1.7 — 2022.07.14

Исправлено

  • Устранены некоторые проблемы со входом в swagger-ui.
  • Уровень журнала изменён на off по умолчанию.

Версия 1.1.6 — 2022.07.14

Исправлено

  • Исправлены ошибки.

Версия 1.1.5 — 2022.07.14

Исправлено

  • Исправлены ошибки.

Версия 1.1.4 — 2022.07.13

Исправлено

  • Исправлены ошибки.

Версия 1.1.3 — 2022.07.12

Добавлено

  • Возможность настройки состояния кода ответа по умолчанию.

Исправлено

  • Исправлены ошибки.

Версия 1.1.2 — 2022.07.12

Добавлено

  • Вывод баннера и номера версии.
  • Изменение структуры каталогов.

Версия 1.1.1 — 2022.07.11

Добавлено

  1. Для компенсации запрета типов добавлен обратный вызов для времени запрета и времени снятия запрета, который можно вызвать во время инициализации программы или напрямую унаследовать интерфейс cn.omisheep.authz.core.callback.RateLimitCallback и внедрить его в Spring.
import cn.omisheep.authz.AuHelper;

class Main {
    void test() {
        AuHelper.Callback.setRateLimitCallback((v1, v2, v3, v4, v5, v6) -> {
            ...
        });
    }
}
  1. Добавлено ограничение RateLimit по userId.
  2. При ограничении параметров разрешения можно использовать аннотацию @ArgResource для ресурсов, которая используется так же, как и условие в данных разрешениях.
public class ArgResourceTest {
    @ArgResource("name")
    public static String name() {
        return "ooo";
    }

    @ArgResource
    public static int id() {
        return 123;
    }
}

@RestController
class Main {
    // Параметр name равен ooo, требуется роль zxc  
    // id равен 177, требуется admin разрешение
    // zxc может получить доступ к id от 123 до 156, не может получить доступ 177
    // admin может получить доступ от id 146 до 200
    // Если у пользователя есть две роли, то берётся пересечение. Например, zxc и admin могут получить доступ от 123 до 200.
    @Roles({"admin", "zxc"})
    @GetMapping("/get/{name}/{id}")
    public Result getPath2(@Roles(value = "zxc", paramResources = "#{name}") @PathVariable String name,
                           @BatchAuthority(roles = {
                                   @Roles(value = "zxc", paramRange = {"#{id}-156", "177"}),
                                   @Roles(value = "admin", paramRange = "146-200", paramResources = "177")
                           }) @PathVariable int id) {
    ...
    }
}

Исправлено

  • Исправлены ошибки и неточности в описании.
  • Частично оптимизирован код.

Удалён

  • Удалены cn.omisheep.authz.annotation.Auth, cn.omisheep.authz.annotation.BannedType.
  • Запрет типов удалён, теперь можно запретить только API.

Версия 1.1.0 — 2022.07.11

Добавлено

  • Ограничение области приложения, чтобы избежать загрязнения данных при запуске разных приложений в одном redis.
authz:
  app: omisheep1
  ...
authz:
  app: omisheep2
  ...
  • Функция активного запрета, включая:
    • возможность активного запрета для определённого пользователя, устройства, IP или диапазона IP на указанное время;
    • снятие запрета;
    • изменение времени запрета;
    • просмотр информации о запрете. Данный текст представляет собой программный код на языке Java.

В запросе нет текста, который можно было бы перевести на русский язык.

cn.omisheep.authz.AuHelper; — это класс с именем AuHelper из пакета cn.omisheep.authz;

class Main { — это объявление класса с именем Main;

public void test() { — объявление метода test класса Main;

AuHelper.denyUser(1, "2s"); // 对用户1进行封禁2秒 — вызов метода denyUser класса AuHelper с аргументами 1 и "2s". Это означает, что пользователь с идентификатором 1 будет заблокирован на 2 секунды;

AuHelper.denyUser(2, "mac", "10s"); // 对用户2的mac设备进行封禁10秒 — вызов метода denyUser класса AuHelper с аргументами 2, "mac" и "10s". Это означает, что устройство пользователя с идентификатором 2 с типом mac будет заблокировано на 10 секунд;

AuHelper.removeDenyUser(1); // 移除用户1的封禁 — вызов метода removeDenyUser класса AuHelper с аргументом 1. Это означает, что блокировка для пользователя с идентификатором 1 будет снята;

AuHelper.denyIPRange("10.2.0.0/24", "10d"); // 对10.2.0.0/24网段下的IP进行封禁10天 — вызов метода denyIPRange класса AuHelper с аргументами "10.2.0.0/24" и "10d". Это означает, что все IP-адреса в диапазоне 10.2.0.0/24 будут заблокированы на 10 дней;

AuHelper.denyIP("10.2.0.2", "10d"); // 对ip 10.2.0.2进行封禁10天 — вызов метода denyIP класса AuHelper с аргументами "10.2.0.2" и "10d". Это означает, что IP-адрес 10.2.0.2 будет заблокирован на 10 дней.

Это всё, что можно сказать о данном тексте. Если у вас есть дополнительные вопросы или нужна дополнительная информация, пожалуйста, уточните запрос.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/iozxc-authz-spring-boot-starter.git
git@api.gitlife.ru:oschina-mirror/iozxc-authz-spring-boot-starter.git
oschina-mirror
iozxc-authz-spring-boot-starter
iozxc-authz-spring-boot-starter
master