Перейти к основному контенту

Enforcers

Enforcer - это основная структура в Casbin. Он служит интерфейсом для пользователей для выполнения операций с правилами политики и моделями.

Поддерживаемые Enforcers

Ниже представлен полный список enforcers Casbin. Любой вклад от третьих сторон в новый enforcer приветствуется. Пожалуйста, сообщите нам, и мы добавим его в этот список :)

EnforcerАвторОписание
EnforcerCasbinEnforcer - это основная структура для взаимодействия пользователей с политиками и моделями Casbin. Вы можете найти больше деталей об API Enforcer здесь.
CachedEnforcerCasbinCachedEnforcer основан на Enforcer и поддерживает кэширование результата оценки запроса в памяти с использованием карты. Он предоставляет возможность очистки кэшей в течение указанного времени истечения срока действия. Кроме того, он гарантирует безопасность потоков с блокировкой чтения-записи. Вы можете использовать EnableCache для включения кэширования результатов оценки (по умолчанию включено). Остальные методы API CachedEnforcer такие же, как у Enforcer.
DistributedEnforcerCasbinDistributedEnforcer поддерживает несколько экземпляров в распределенных кластерах. Он оборачивает SyncedEnforcer для диспетчера. Вы можете найти больше деталей о диспетчере здесь.
SyncedEnforcerCasbinSyncedEnforcer основан на Enforcer и предоставляет синхронизированный доступ. Он является потокобезопасным.
SyncedCachedEnforcerCasbinSyncedCachedEnforcer оборачивает Enforcer и предоставляет синхронный кеш решений.
ContextEnforcerCasbinThe ContextEnforcer implements the IEnforcerContext interface and provides context-aware API methods. Currently, only operations that utilize ContextAdapter have corresponding context versions, such as LoadPolicyCtx(), SavePolicyCtx(), AddPolicyCtx(), RemovePolicyCtx(), etc. This enforcer allows using context for more precise control over adapter operations. The interface is designed to support future expansion of context-aware functionality across more Casbin operations.