メインコンテンツにスキップ

Enforcers

EnforcerはCasbinの主要な構造です。 これは、ユーザーがポリシールールとモデルに対して操作を実行するためのインターフェースとして機能します。

サポートされているエンフォーサー

以下にCasbinエンフォーサーの完全なリストを提供します。 新しいエンフォーサーに対する第三者からの貢献は歓迎されます。 私たちにお知らせください、そして私たちはそれをこのリストに追加します :)

エンフォーサー著者説明
EnforcerCasbinEnforcerは、ユーザーがCasbinポリシーとモデルと対話するための基本的な構造です。 Enforcer APIについての詳細はこちらで見つけることができます。
CachedEnforcerCasbinCachedEnforcerEnforcerに基づいており、マップを使用してリクエストの評価結果をメモリにキャッシュすることをサポートしています。 指定された有効期限内にキャッシュをクリアする機能を提供します。 さらに、読み書きロックによりスレッドセーフを保証します。 EnableCacheを使用して評価結果のキャッシュを有効にすることができます(デフォルトは有効)。 CachedEnforcerの他のAPIメソッドはEnforcerと同じです。
DistributedEnforcerCasbinDistributedEnforcerは分散クラスタ内の複数のインスタンスをサポートします。 ディスパッチャーのためにSyncedEnforcerをラップします。 ディスパッチャーについての詳細はこちらで見つけることができます。
SyncedEnforcerCasbinSyncedEnforcerEnforcerに基づいており、同期アクセスを提供します。 これはスレッドセーフです。
SyncedCachedEnforcerCasbinSyncedCachedEnforcerEnforcerをラップし、決定同期キャッシュを提供します。
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.