How enforcement works
Access is enforced at the chunk level, before retrieval, on every query.1
Chunks inherit the document's access metadata
When a file is processed, it is split into chunks for embedding. Each chunk carries the parent document’s classification rank and categories as metadata alongside its vector.
2
Every request resolves the user's effective scope
On each query, ScopeRAG resolves the signed-in user’s groups into an effective scope: the set of categories they may see and the maximum classification rank they may read. Composer filters can only narrow this scope further.
3
Scope becomes a filter on the vector search
The effective scope is compiled into a metadata filter that is applied to the similarity search itself. Chunks outside the user’s categories or above their classification ceiling are excluded from the candidate set — they are never scored, never ranked, and never returned.
4
Only in-scope passages reach the model
The model receives only passages that survived the filter. Because exclusion happens before retrieval, no out-of-scope text is ever placed in the prompt, and citations can only reference documents the user is allowed to open.
The security consequence of pre-filtering: even a prompt-injection or jailbreak attempt cannot surface content the user lacks access to, because that content was never a retrieval candidate for their request. The model cannot reveal what it was never given.
How access is calculated
A user’s access is the resolved combination of every group they belong to. The combination follows fixed rules:
A chunk is retrievable for a user only when both conditions hold: its category is in the user’s category union and its classification rank is at or below the user’s ceiling. The two axes are combined with AND, never OR.
Administrators and owners are not group members; their access is granted by role rather than resolved from groups. See Access and permissions for the role model.
Deployment models
ScopeRAG runs in whichever boundary your compliance posture requires.Managed cloud
Multi-tenant SaaS operated by ScopeRAG. Fastest to start. Each organization’s documents, chunks, and vectors are isolated per tenant.
On-premises / private
Deployed inside your own cloud account or data center. Documents, embeddings, and the vector store never leave your infrastructure. Suited to regulated institutions with data-residency obligations.
On-premises deployment keeps document content, extracted chunks, and vectors within your boundary. What leaves the boundary is limited to model inference — and that too can be kept internal with a self-hosted model. See below.
Data flow to the model provider
Generating an answer sends the user’s question and the retrieved in-scope passages to a chat model. Where that model runs depends on your configuration.
Only classifications and categories the user is cleared for can appear in a prompt, but the passages themselves are real document text. For workloads where no content may reach an external provider, use a self-hosted model.
Data at rest and in transit
- Documents, extracted text, and vectors are encrypted at rest.
- Traffic is encrypted in transit over TLS.
- Provider API keys supplied for bring-your-own-key are stored encrypted and are never returned to the client or placed in prompts.
Deletion and retention
Deleting a document removes the file and its derived chunks and vectors, so the content is no longer a retrieval candidate for any user.Deletion affects future retrieval. It does not rewrite past chat transcripts, which may still quote passages from a document that has since been deleted. Delete conversations separately if a transcript must not retain quoted content.
Access and change auditing
Security-relevant activity is recorded in the Audit log: sign-ins, invitations, role and group changes, and document create, edit, and delete events. Filter by actor, action, and date range, and export the current view for review or evidence.Common questions
Can a chat filter or a clever prompt widen my access?
Can a chat filter or a clever prompt widen my access?
No. Composer filters can only narrow retrieval within your resolved scope, and enforcement happens before retrieval, so no prompt can cause out-of-scope passages to be retrieved or cited.
Is access enforced per chunk or per document?
Is access enforced per chunk or per document?
Per chunk. Each chunk carries its parent document’s classification and categories, and the retrieval filter is applied at the chunk level, so a document’s passages are only ever eligible for users cleared for that document.
Does our document content leave our environment?
Does our document content leave our environment?
In managed cloud, retrieved in-scope passages are sent to the configured model provider to generate answers. With bring-your-own-key this goes through your own provider account; with a self-hosted model or an on-premises deployment, content stays within your boundary.
Do you support SSO?
Do you support SSO?