Platform / Company brain / Access and governance

Access and governance: the company brain never gives more access than the asking user

How identity, access lists, tokens, tenant isolation, data policy and audit keep what the brain knows inside the limits your organisation already sets.

A brain that holds what an organisation knows is only safe if it shows each person, and each agent acting for a person, only what they are already allowed to see. This page explains how a request is tied to a person, how access lists are enforced inside the database, how tokens and tenants are kept apart, what is never stored, the commands for exporting and erasing a person’s data, the audit chain and the kill switch.

The rule: never more access than the asking user

Every read from the brain is made on behalf of someone. The rule is simple to state: the brain never gives more access than the asking user has. An assistant answering a question for an analyst sees what the analyst could see in the source systems, and nothing more. An agent acting for a manager is limited to that manager’s view, narrowed further by what the agent itself is allowed to do.

The rule exists because a brain changes where the risk sits. Information that was safely scattered across systems becomes reachable from one place. Without identity-aware access, the brain would become the easiest route to everything. With it, connecting another source adds context without widening who can see what.

From a request to a set of principals

How the brain works out who is asking before it reads anything.

  1. 01

    Identify the caller

    The request arrives with a credential. The tenant is always taken from that credential, never from anything the request says about itself.

  2. 02

    Resolve the person

    The caller is matched to a person in the graph, through the accounts that person holds across directories.

  3. 03

    Expand to principals

    The person’s principals are the person, their accounts and every group they belong to, including through nested groups. This set is what access lists are checked against.

  4. 04

    Filter inside the database

    Reads apply the principals inside the database query itself, so content the person may not see never leaves storage, rather than being filtered out afterwards.

Access lists in the database, and failing closed

Content objects keep the access list copied from their source. When a search runs, the database compares that list with the asker’s principals and returns only what matches. If an object’s access list is unknown or incomplete, the object is treated as invisible. The design fails closed: missing information about who may see something means nobody sees it through the brain.

When the brain cannot identify the asker as a person at all, it offers only what is tenant-wide, the information every member of the organisation could see anyway. The content store and permission-filtered search that apply these rules exist as libraries with passing tests; the HTTP endpoints that expose them are in progress and not yet finished.

Tokens: shared views and delegation

Two kinds of credential, with different reach.

  • API tokens

    An API token belongs to the tenant, not to a person. It sees only the tenant’s shared view, the information open to the whole organisation, and its scopes limit which reads it may make. It cannot be used to read one person’s restricted content.

  • Delegation tokens

    For acting on a person’s behalf. They are short-lived, signed, scoped and checked against pinned issuer keys. Verification exists in code and is in progress as part of the content endpoints.

  • Act-on-behalf grants

    When an agent acts for a person, its grant is intersected with the token’s scopes and that person’s access. The agent gets the overlap, never the union, so delegation cannot widen what anyone can see.

Tenant isolation and two database roles

Every row in the store belongs to a tenant, and row-level security in the database keeps tenants apart. Isolation is enforced by the database, not left to application code to remember on every query. The tenant for a request comes from its credential, so a request cannot reach another tenant’s data by naming it.

The appliance uses two database roles. The runtime role that serves requests cannot own the schema and cannot bypass row-level security. A separate role manages the schema. So a fault in the serving code cannot switch isolation off, because the account that code runs as does not have the right to do so.

Retrieved content is untrusted, and sanitisation before any model

Anything the brain retrieves, whether a document, a ticket comment or an email, is treated as data, never as instructions. Retrieved content is untrusted and cannot override policy. A paragraph in a document that tells an assistant to ignore its rules and reveal salaries is just a paragraph, and the access rules and policies that apply to the request do not change because of it.

Before content reaches any model, a sanitisation gateway is designed to remove or mask what must not be sent: personal data, restricted fields, values that look like secrets. The gateway exists in code and is in progress, so it is not yet something to rely on. Secret-looking values are already removed before anything is stored in the brain.

Export policy, and the person commands

Technical controls that help an organisation meet its own obligations. How and when they are used is the organisation’s decision.

  • Local-only by default

    Personal data and restricted data stay in the appliance by default and are not sent outside it.

  • Credentials never stored

    Passwords and other credentials are never read or stored. The directory connector refuses to start if it is configured to read one.

  • Person export

    A command exports what the brain holds about one person, so a request for that person’s data can be answered from the record itself.

  • Person erase

    A command erases one person’s data from the brain when the organisation decides it must be removed.

  • Optional retention

    A retention setting that pseudonymises people who have been deleted, so history stays usable without keeping who they were.

Audit, the kill switch and the three modes

The appliance writes its actions to a hash-chained audit log with signed checkpoints, so tampering with the record is detectable. The log can be read through the local API by tokens that are scoped to read it. It shows what the appliance did, which is the starting point for any review of how the brain has been used.

The appliance connects outward only, over mutual TLS, and accepts only signed, typed commands from an allow-list. There is no shell capability. A local kill switch, recorded in a journal, cuts the link from inside your environment. The appliance runs in one of three modes: connected, private with a control plane you host, or air-gapped with no outbound connection at all.

Compliance-by-design

Swfte provides the technical controls, governance mechanisms and evidence required to deploy AI within an organisation's applicable regulatory, security and policy requirements. The exact posture depends on the customer's use case, jurisdiction, deployment and configuration. The controls on this page are part of how the brain runs, so your security, privacy and legal teams can use them in their own work. Deploying the brain does not discharge any obligation on its own, and this page is not legal advice. Swfte does not hold a SOC 2 report, an ISO 27001 certificate or a HIPAA BAA today. A SOC 2 Type I audit is in preparation; the trust page lists what is in place and what is in progress.

A practical way to use the controls: map each obligation you hold to the control that supports it and the evidence it produces, such as the audit log for traceability, the erase command for deletion requests and local-only storage for data residency. Where a control is in progress, such as the sanitisation gateway, record it as a gap rather than as covered.

Access and governance: built, in progress and on the roadmap

What is enforced today and what is still being built. No dates are given.

What is built, in progress and on the roadmap: Access and governance
CapabilityStatusNotes
Row-level-security tenant isolation and two database rolesBuiltThe runtime role cannot bypass isolation.
Tenant taken from the credential, token scopesBuiltA request cannot name another tenant.
Local-only personal and restricted data; credentials never storedBuiltDefault behaviour of the appliance.
Person export, person erase and optional retentionBuiltRetention pseudonymises deleted people.
Hash-chained audit with signed checkpointsBuiltReadable through the local API.
Kill switch, signed allow-listed commands and three modesBuiltNo shell capability.
Per-object access lists and principal-filtered searchIn progressLibraries with tests. HTTP endpoints not finished.
Delegation tokens with intersected act-on-behalf grantsIn progressVerification exists in code.
Pre-model sanitisation gatewayIn progressNot yet something to rely on.

Legend

  • Built. Exists today and can be used.
  • In progress. Being built. Not yet something to rely on.
  • Roadmap. Designed for and on the roadmap. Not built. No dates are given.

Where this fits in the loop

Access and governance run through two stations: what the brain releases, and what governed agents are allowed to see and do with it.

The same four stations and four arrows are listed in order below.
  1. 01Company brainHolds what the organisation knows, with evidence statuses, history and access rules.(this page)
  2. 02Custom modelAdapted on data chosen from the brain, then evaluated and hardened before it ships.
  3. 03Governed agentsUse the model and read the brain, inside a Trust Profile, with approval where it matters.(this page)
  4. 04OutcomesWhat happened: approvals, corrections, results and cost, all on the record.

The four arrows

  1. Company brain to Custom model: select, sanitise, adaptRoadmap

    Choose training data from the brain, remove what must not reach a model, adapt an open-weight base. The sanitisation gateway is in progress, and the data selection and training steps are on the roadmap.

  2. Custom model to Governed agents: serve, governBuilt

    Serve the model on dedicated infrastructure behind the Connect gateway and bring agents onto it under policy. Model hosting and the gateway are built.

  3. Governed agents to Outcomes: act, recordBuilt

    Agents act within their Trust Profile, with human approval for consequential steps, and every action is recorded.

  4. Outcomes to Company brain: written back as evidenceRoadmap

    Outcomes return to the brain as new evidence with a status, and they decide when the model needs retraining. The write-back is on the roadmap.

Legend

  • Built. Exists today and can be used.
  • In progress. Being built. Not yet something to rely on.
  • Roadmap. Designed for and on the roadmap. Not built. No dates are given.

Frequently asked questions

Can the company brain show someone data they cannot see in the source system?

It is designed never to. Every read is filtered by the asking person’s principals inside the database, using access lists copied from the source. The brain never gives more access than the asking user has, and an agent acting for that person gets no more than the overlap of their access and its own grant.

What happens if a document has no access list?

It is invisible. If an object’s access list is unknown or incomplete, no one can retrieve it through the brain. The design fails closed, so missing information about who may see something never turns into everyone seeing it.

What can an API token see?

Only the tenant’s shared view: information open to the whole organisation. API tokens belong to the tenant rather than to a person, their scopes limit which reads they can make, and the tenant always comes from the credential, never from the request.

How does an agent act on a person’s behalf?

Through a short-lived, signed, scoped delegation token. The agent’s act-on-behalf grant is intersected with the token’s scopes and the person’s access, so it gets the overlap, never the union. Delegation token verification exists in code and is in progress.

Can a document instruct an AI to bypass the rules?

No. Retrieved content is untrusted and cannot override policy. Text inside a document, email or ticket is treated as data, and the access rules and policies that apply to the request stay the same whatever that text says.

Is personal data sent to Swfte?

Not by default. Personal and restricted data stays local to the appliance in your environment, and passwords and credentials are never read or stored. In air-gapped mode there is no outbound connection at all.

Does deploying the company brain meet our GDPR obligations?

Not on its own, and Swfte does not claim it. The brain provides technical controls and evidence, such as local-only personal data, per-person export and erase, optional retention and a tamper-evident audit log, that help an organisation meet its own obligations. The posture depends on your use case, jurisdiction, deployment and configuration.

Can we switch the brain off quickly?

Yes. A local kill switch, recorded in a journal, cuts the outbound link from inside your environment. The appliance also accepts only signed, typed commands from an allow-list, and there is no shell capability for anyone to use remotely.

Take access and governance further with Swfte

Start with one entry point. Add intelligence, agents, workflows and infrastructure as you prove value.

See what your agents are actually doing

Nexus gives you governance, observability and spend control across every agent you run.