AbacQueryFilter

@Order(value = -2147483648)
abstract class AbacQueryFilter : SnapshotQueryFilter

ABAC 查询过滤器。

在查询快照(Snapshot)时,根据当前上下文中的主体(Principal)标签 自动注入权限过滤条件,实现基于属性的访问控制。

权限匹配规则

主体标签资源标签匹配结果
wildcard (["*"])任意✅ 匹配
["a", "b"]["a"]✅ 匹配
["a", "b"]["c"]❌ 不匹配
任意无该 key✅ 匹配(资源公开)

See also

Constructors

Link copied to clipboard
constructor()

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
open override fun filter(context: QueryContext<*, *>, next: FilterChain<QueryContext<*, *>>): Mono<Void>
Link copied to clipboard
abstract fun ContextView.getPrincipalTags(context: QueryContext<*, *>): Mono<AbacTags>

从当前上下文获取主体的 ABAC 标签。

Link copied to clipboard
open fun ContextView.resolveCondition(context: QueryContext<*, *>): Mono<Condition>

从当前上下文解析 ABAC 查询条件。