Access control
Backbuild enforces access control at every layer of the platform. Authorization is evaluated on every request, multi-tenant isolation is enforced in the database, and privileged access is limited, logged, and reviewed on a recurring schedule.
Role-based access control
- Organization-scoped roles: roles and permissions are defined per organization. A user's privileges in one organization have no effect on another.
- Role catalog: the platform ships with a set of well-defined roles (such as owner, admin, member, billing, analyst) and supports custom roles built from granular permissions where the subscription plan allows.
- Permission checks: every write operation and every privileged read evaluates the caller's organization membership, role, and permission set before proceeding.
- API surface: authorization is enforced in a central middleware layer so that individual handlers cannot accidentally bypass checks.
Multi-tenant isolation
- Row Level Security: every customer-facing data table has Row Level Security policies that restrict reads and writes to rows belonging to the authenticated user's organization.
- Defense in depth: application-layer authorization, parameterized database calls, and RLS all enforce the tenant boundary independently. A bug in any single layer cannot result in cross-tenant data exposure.
- Never disabled: RLS is mandatory. Disabling a policy to work around a bug is not permitted. When a legitimate operation is blocked, the policy or the code is fixed instead.
- Shared infrastructure, isolated data: customers share compute and storage infrastructure but their data is logically isolated. Physical or dedicated-tenancy deployments are available on request for customers with specific requirements.
Least privilege
- Database roles: application database roles are granted only the privileges required to execute the stored procedures they need. No application role has broad
SELECTor superuser access. - Stored procedures: API code interacts with the database exclusively through stored procedures that perform their own authorization. Raw SQL queries from application code are not permitted.
- Production access: human access to production infrastructure is limited to a small group of authorized operators, requires MFA, and is logged.
- Service accounts: machine identities receive narrowly scoped permissions and are rotated on a scheduled basis.
Access reviews
User and administrative access is reviewed quarterly. The review covers human accounts (including contractors and vendors), service accounts, and any elevated or break-glass access. Outcomes are recorded in an internal runbook and fed back into the access provisioning workflow. Material findings are tracked through remediation.
Separation of duties
- Administrative and operational duties are separated where the platform permits, so that a single individual cannot unilaterally introduce and approve a change.
- Code changes require peer review through pull requests before merge.
- Production deployments are automated through auditable pipelines; ad-hoc direct changes to production are discouraged and, when required, must be logged and reviewed.
- Security-sensitive configuration changes go through a documented approval path.
Privileged access monitoring
All privileged actions (administrative logins, role changes, policy updates, break-glass usage) are logged with user attribution, correlation identifiers, and timestamps. Logs are forwarded to the central audit store and monitored for anomalous patterns.
Contact
Access control questions or role configuration help: security@backbuild.ai