ACLFilter: ACL Filter

ACLFilterR Documentation

ACL Filter

Description

Access Control List filter for security-aware search

Public fields

acl_field

Metadata field containing ACLs

Methods

Public methods


Method new()

Create a new ACLFilter

Usage
ACLFilter$new(acl_field = "_acl")
Arguments
acl_field

Field name for ACLs (default: "_acl")


Method filter()

Filter documents based on user's ACL principals

Usage
ACLFilter$filter(documents, user_principals, default_allow = FALSE)
Arguments
documents

List of documents with metadata

user_principals

Character vector or list of ACLPrincipal

default_allow

Allow if no ACL defined (default: FALSE)

Returns

Filtered documents


Method add_acl()

Add ACL to document metadata

Usage
ACLFilter$add_acl(metadata, principals)
Arguments
metadata

Document metadata

principals

Character vector of principal strings

Returns

Updated metadata


Method create_filter_condition()

Create ACL filter condition for query

Usage
ACLFilter$create_filter_condition(user_principals)
Arguments
user_principals

Character vector of principals

Returns

Filter condition list


Method clone()

The objects of this class are cloneable with this method.

Usage
ACLFilter$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

Examples

## Not run: 
acl_filter <- ACLFilter$new()
filtered <- acl_filter$filter(
  documents = results,
  user_principals = c("user:alice", "group:engineering")
)

## End(Not run)


VectrixDB documentation built on Feb. 20, 2026, 5:09 p.m.