Production data & databases
Prevent irreversible production data loss and unsafe, high-blast-radius changes.
5 policies · 24 systemsOpen control policies43,280 AI events recorded on our own engineering fleet in the last 30 days.
Practical policies for the actions you can’t afford to get wrong. Protect production data, privileged access and business decisions with clear, reviewable controls.
DROP TABLE public.orders CASCADEProduction data cannot be dropped or truncated.
Read-only queries remain permitted.
Prevent irreversible production data loss and unsafe, high-blast-radius changes.
5 policies · 24 systemsOpen control policiesStop agents from removing production foundations, exposing networks or disabling guardrails.
6 policies · 35 systemsOpen control policiesPrevent privilege escalation, control-plane lockout and unmanaged credentials.
6 policies · 26 systemsOpen control policiesKeep secrets and regulated data inside approved tenants, regions and recipients.
6 policies · 37 systemsOpen control policiesProtect source controls, build trust and production releases from agent-driven changes.
6 policies · 37 systemsOpen control policiesClose every unmanaged link in the shadow AI supply chain: personal accounts, extensions, IDE assistants, MCP connectors, public models and vendor AI features.
7 policies · 42 systemsOpen control policiesSeparate preparation from authority to move money, alter payees or rewrite financial records.
5 policies · 21 systemsOpen control policiesControl public sends, customer-impacting changes and commitments made on the company’s behalf.
5 policies · 26 systemsOpen control policiesKeep consequential people decisions, signatures and record disposal with accountable humans.
5 policies · 27 systemsOpen control policiesDecide on immutable IDs and effective context: principal, tenant/account, environment, resource, data classification and destination. Names and local profiles are hints, not authority.
If the target, blast radius, tenant or data classification cannot be resolved, hold the action. Do not treat missing metadata as non-production or low risk.
An approval covers the actor, operation, target set, content or artifact digest, value and expiry. Material changes invalidate it; the requester cannot approve their own action.
Record resolved context, policy version, matched rule, decision, approver and downstream result. Minimise captured sensitive content and protect the record from the acting identity.
9 control domains, 51 policies. Pick a domain from the side, filter each set by the systems you run, and download any domain as Markdown.
Keep agents useful for diagnosis, query authoring and migration preparation while preventing them from destroying production data, database services or recovery paths.
Deny any request that drops or truncates a production database, schema, table, collection or dataset. Unknown environment classification is treated as production for destructive DDL.
DROP TABLE public.orders CASCADEBlock when the connection resolves to production.
Delete dataset analytics_prod with contentsBlock even when issued through an SDK or console-backed tool.
Remove destructive ownership/DDL privileges from routine agent identities and route production migrations through a controlled runner. Intercept SQL, database CLIs, migration tools and MCP calls before execution; database permissions remain the final boundary.
No self-service exception. Use a separately authenticated break-glass or approved migration workflow with backup verification and an independent operator.
Run SELECT, EXPLAIN and schema introspection against a permitted production database, and execute destructive DDL only in an explicitly classified ephemeral test database.
Drop a production table, truncate a protected partition, hide DROP in a multi-statement batch, or target an endpoint whose environment cannot be resolved.
Deny deletion of a production database instance, cluster, server, warehouse or account and deny changes whose purpose is to remove deletion protection immediately before deletion.
DeleteDBInstance(prod-orders, SkipFinalSnapshot=true)Block.
Disable deletion protection on orders-prodBlock as a precursor to a protected deletion.
Enable native deletion protection or locks and deny delete/protection-change permissions to the agent principal. Protect the identity that can remove the native guardrail with a separate approval path.
A decommission workflow must verify dependency removal, recovery evidence, retention obligations and two-person authorisation; it runs outside the routine agent identity.
Describe configuration, create a restore drill in an approved sandbox or delete an explicitly ephemeral database instance.
Delete a protected instance, disable its deletion protection, remove its lock or perform the same action through an API alias.
Hold production DELETE, UPDATE, MERGE and overwrite operations when impact is unbounded or exceeds the data owner’s configured row, partition or percentage threshold.
UPDATE customers SET status='inactive'Hold because the statement is unbounded.
DELETE FROM events WHERE created_at < :cutoffHold when the estimate exceeds the configured partition or row threshold.
Use a query gateway or controlled write role that can require an approved query digest. Apply statement timeouts, transaction controls and workload limits in the database as secondary safeguards.
One approval for the exact target, statement digest and estimated impact. Require a fresh decision if the plan, parameters or affected-row estimate changes materially.
Update one synthetic record by immutable primary key within delegated authority.
Remove the predicate after approval, change the cutoff to include more partitions or split one mass update into repeated smaller requests.
Deny agent-initiated changes that disable backups, point-in-time recovery, versioning or deletion protection, or reduce retention below the approved recovery baseline.
Reduce long-term backup retention from 12 months to 0Block.
Set BackupRetentionPeriod to 0 on a production DBBlock.
Use separate backup accounts/projects, immutable storage and provider policy to deny destructive recovery changes. Alert the recovery owner on every blocked attempt.
No routine exception. A documented retention change requires records, security and service-owner review through a separately privileged workflow.
Increase retention or create an additional protected recovery point.
Disable point-in-time recovery, reduce retention below policy or delete the only valid recovery copy.
Hold production schema changes that can destroy data, rewrite large tables, take blocking locks, remove compatibility or run outside the approved migration mechanism.
ALTER TABLE orders DROP COLUMN legacy_totalHold for data-owner and service-owner review.
Apply generated migration directly to productionHold when it bypasses the approved release runner.
Permit production DDL only to a controlled migration identity. Require plan artefacts, lock/impact checks and release approval in the deployment pipeline.
Emergency execution requires the incident commander, database owner, captured command digest and confirmed recovery point; access expires after the incident action.
Generate and review a migration plan or apply a reversible migration in an isolated staging copy.
Apply a changed migration, bypass the release identity or run an unplanned destructive ALTER in production.
Allow investigation, planning and bounded operational work without granting an agent unilateral control over production infrastructure or organisation-wide security controls.
Deny deletion, closure or organisation departure for production accounts, subscriptions, projects, resource groups and equivalent containers that own critical workloads.
Delete project payments-prodBlock.
Delete resource group rg-prod-coreBlock even if the group name was supplied by the agent.
Apply organisation-level denies, resource locks or liens and keep their removal permissions out of agent roles. Alert both the platform owner and security operations on attempted bypass.
Only a formal estate-decommission process with dependency evidence and independent authorisation; never a reusable chat approval.
Read inventory or delete an explicitly ephemeral sandbox container with no protected descendants.
Delete a production scope, remove its protection or move/rename it to evade classification.
Require approval for a saved production infrastructure plan containing create, update, replace or delete actions. Approval applies to the plan digest, not to a generic apply command.
Apply saved plan sha256:… to prod-euHold until the exact plan and workspace are approved.
Destroy stack payments/prodHold and route to the decommission path.
Run production applies through a controlled CI identity that accepts only an approved plan artefact. Keep direct provider write credentials out of developer agents.
Emergency plan requires incident reference, exact digest, short expiry and an independent approver with authority over the affected services.
Generate a plan with a read/planning identity and apply the unchanged approved plan in the configured window.
Use auto-approve, apply without a saved plan, change variables after approval or apply to another workspace.
Deny agent-initiated deletion of production clusters, namespaces, persistent storage and shared ingress, and deny scaling a critical service to zero outside an approved incident or deployment workflow.
delete namespace payments-prodBlock.
DeleteCollection deployments where app=checkoutBlock when expansion includes all production replicas.
Use least-privilege Kubernetes RBAC, admission policy, protected GitOps paths and disruption/availability controls. Keep cluster-admin and namespace-delete permissions out of routine agents.
A separate incident or decommission workflow with the cluster owner; the agent does not receive standing cluster-admin credentials.
Read workload status or restart one permitted deployment through the approved rollout path.
Delete a namespace, expand a selector to all workloads, delete persistent data or target an unresolved cluster context.
Hold network changes that make a previously private production service publicly reachable or materially broaden ingress to administrative, database or control-plane ports.
Authorize 0.0.0.0/0 to tcp/5432 on a production security groupHold for network security approval.
Disable access policy on admin.example.comHold because it creates a public admin path.
Use provider policy, policy-as-code and network admission controls to prevent unreviewed exposure. Re-evaluate reachability after apply and automatically expire temporary rules.
Approval covers exact asset, source, port, compensating controls and expiry. Material changes or extensions require new approval.
Narrow an existing ingress rule or add a time-bound internal source range to a non-critical service.
Open a database/admin port globally, remove the private endpoint or split a public path across multiple changes.
Deny agent changes that stop, delete or materially reduce required audit logging, threat detection, security scanning, WAF, endpoint protection or policy enforcement in production.
StopLogging on the organisation trailBlock.
Delete the central audit log sinkBlock.
Use organisation-level deny policy and a security-owned logging account/project. Generate a high-priority event on attempted tampering and retain the decision outside the affected scope.
No routine exception. Vendor-directed emergency maintenance uses a security-owned identity and dual control with compensating telemetry.
Add a new log sink or increase retention without weakening required coverage.
Stop logging, delete the central trail, add an exclusion for privileged changes or disable a required detector.
Deny scheduling deletion, disabling, exporting or weakening access policy for production encryption and signing keys used by critical services or protected data.
ScheduleKeyDeletion on the production payments keyBlock.
Purge a soft-deleted production vaultBlock.
Use key policies, separation of duties, purge protection and independent key-administrator identities. The workload and agent identities should consume keys without administering them.
Key retirement follows a cryptographic lifecycle process with dependency proof, recovery/escrow checks and two authorised custodians.
Read key metadata or perform an authorised encrypt/decrypt operation through the workload role.
Schedule deletion, purge the vault, export key material or add the agent as key administrator.
Let agents assist with access administration while ensuring they cannot expand their own authority, create standing privileged access or weaken authentication controls.
Deny an agent or its acting principal from changing its own roles, group membership, permission boundary, trust policy, credentials, policy controls or audit configuration.
Attach AdministratorAccess to the current agent roleBlock.
Add the agent service principal as an owner of a privileged appBlock.
Apply immutable permission boundaries and keep identity administration in a separate brokered role. Evaluate effective access before mutation and protect policy administration from the acting identity.
None. Any access expansion must be executed by a different, authorised identity after independent review.
Read the actor’s effective access or request a separately approved temporary role through the authorised workflow.
Grant itself access directly or via a group, change its trust policy or disable the control that would block it.
Deny direct or standing grants of global, organisation, root, billing, identity-provider, key-administrator and equivalent tier-zero roles to agents or through agent-managed identities.
Assign Global Administrator to agent-appBlock.
Grant roles/resourcemanager.organizationAdmin to an automation principalBlock.
Exclude tier-zero actions from routine agent credentials and require a hardened privileged-access workstation and JIT workflow for authorised humans.
No agent exception. Break-glass use is human-only, separately monitored and reviewed immediately after use.
Request a narrowly scoped, time-bound operational role through PIM/JIT.
Grant a tier-zero role directly, via a custom role or through nested protected-group membership.
Hold any non-tier-zero privileged grant unless it is limited to the minimum resource scope and permissions, has an approved duration and names a valid business or incident reason.
Activate Contributor on subscription prod for 60 minutesHold for configured approver and reason.
Assign database-admin permission set to one production accountHold and expire automatically.
Use the identity platform’s JIT/PIM mechanism and short-lived credentials. The agent may prepare the request but must not mint or activate the privileged session itself.
Emergency access requires the incident identifier and an approved break-glass path; it expires quickly and triggers retrospective review.
Activate an approved, exact role on one resource for the approved duration.
Broaden scope, extend expiry, change role after approval or reuse the approval for another principal.
Deny agent changes that disable or bypass required MFA, SSO, conditional access, device trust, session lifetime or phishing-resistant authentication for protected users and applications.
Exclude Engineering-All from the phishing-resistant MFA ruleBlock.
Set conditional-access policy state to disabledBlock.
Keep authentication policy administration outside agent roles and use provider protections plus configuration monitoring. Send tamper events to a security-owned audit destination.
A security-led outage procedure may use narrowly scoped, expiring exclusions with compensating monitoring; agents cannot approve or execute it alone.
Add a stronger authentication method or narrow a temporary test exclusion in a sandbox tenant.
Disable the policy, add a broad bypass, remove device trust or extend privileged sessions beyond the baseline.
Hold bulk identity lifecycle actions that can lock out a team, customer population or privileged operating group, including correlated single-user requests above the configured threshold.
Suspend all users matching department=SalesHold and expand the exact population.
Deactivate 250 imported usersHold for two-person approval.
Use a lifecycle broker with dry-run population expansion, protected-identity exclusions, dual approval and a recovery plan. Preserve the exact subject list in the decision record.
Incident containment can use a security-approved population and short-lived session revocation; permanent deletion waits for normal review.
Disable one verified departed user through the normal HR-driven workflow.
Disable a broad group, include a break-glass account or split a mass deactivation into small batches.
Deny creation, export or disclosure of long-lived keys, client secrets, tokens and passwords for agent use when a managed workload identity or short-lived credential is available.
Create a downloadable service-account JSON keyBlock for routine agent use.
Create a classic PAT with repo and admin:org scopesBlock.
Prefer OIDC/workload federation and brokered short-lived tokens. Use organisation policy to prohibit key creation and secret scanners to detect disclosure at adjacent channels.
A documented legacy-system exception requires minimum scope, short expiry, managed-vault delivery and an accountable rotation owner.
Obtain a short-lived, audience-bound token through the approved workload identity flow.
Create a non-expiring key, write a secret into the repository or print returned secret material into agent output.
Permit scoped retrieval and analysis while preventing cross-tenant access, uncontrolled exports, public sharing and production-data copies into ungoverned environments.
Deny retrieval or transfer of passwords, private keys, access tokens, recovery codes and live credentials into prompts, tickets, chat, email, logs or unapproved files.
GetSecretValue then paste result into a support ticketBlock before retrieval or transfer.
Post a private key to an incident channelBlock even if the channel is internal.
Expose reference-based secret operations to agents and keep value retrieval in the workload. Add DLP/secret scanning at browser, messaging, repository and ticket boundaries.
No chat-based exception. Human recovery uses the secret system’s audited reveal process on a managed device.
Reference a secret by identifier in deployment configuration without revealing its value.
Retrieve and print a secret, encode it to evade detection or place it in a repository, prompt, ticket or message.
Deny reads and writes when the requested customer, account, case or object does not belong to the tenant and assignment established by the active work context.
Read account 001… belonging to another region/tenantBlock.
Attach customer A’s diagnostic file to customer B’s ticketBlock.
Enforce tenant isolation in the API and data layer with row/object security and scoped credentials. Agent-side intent checks add context but are not the isolation boundary.
Cross-tenant investigations require an authorised support/security role, named tenants, a case reference and time-bound access.
Retrieve the minimum permitted fields for the customer linked to the assigned case.
Change the record ID, use global search or follow a relationship to access another tenant’s data.
Hold exports of confidential, personal, health, payment or employee data when fields, row count, file size or query scope exceed the data owner’s approved threshold.
COPY 2.4M customer rows with email and DOB to an external stageHold for data-owner approval.
Bulk export all contacts to a local CSVHold and verify destination/device.
Use field/row policy, export entitlements, DLP classification and a broker that writes only to approved destinations. Preserve query and destination evidence without duplicating sensitive content.
Approval covers purpose, exact fields/query, population, destination, recipients, retention and expiry. New purpose or destination needs a new decision.
Export an approved aggregate without direct identifiers to a governed analytics workspace.
Add sensitive fields after approval, switch to a personal destination or split a large export into small batches.
Hold external sharing of confidential or restricted files and deny anonymous/public links. Approval must cover the exact content version and verified recipients.
Set board-plan.pdf to anyone-with-linkBlock.
Share restricted contract with counsel@example.com for 7 daysHold for matter-owner approval.
Use source-system classification, domain restrictions, guest policy and DLP at the sharing API. Re-check recipients and classification immediately before creating the share.
One approved content digest, named recipient set, permission and expiry; anonymous links remain prohibited for sensitive classes.
Share an internal-classified document with a named employee who already has approved workspace access.
Create an anonymous link, change recipient after approval or share a revised sensitive document under an old approval.
Deny copying, restoring or replicating raw production datasets into development, test, personal or third-party environments unless an approved transformation removes protected data first.
Restore prod snapshot into shared-dev accountBlock until an approved masked derivative is produced.
Clone prod.customer to developer personal databaseBlock.
Use cross-account policy, snapshot permissions and governed data pipelines. Create masked or synthetic datasets through a controlled identity and classify the output before release.
A time-bound, isolated investigation environment requires privacy/security approval, named users, monitoring and verified destruction.
Create a synthetic or verified masked dataset in the approved test account.
Share the raw snapshot, restore it to a lower-trust account or disable masking after access is granted.
Hold transfers of regulated data to a different region, country, cloud account or SaaS tenant unless the destination is pre-approved for that classification and purpose.
Copy AU customer export to a US multi-region bucketHold for residency review.
Upload a payroll workbook to a personal AI workspaceBlock as an unapproved tenant.
Use organisation policy, storage controls, tenant restrictions, CASB/DLP and approved connector identities. Monitor the downstream result and record destination identifiers.
Requires documented purpose, legal/privacy basis where applicable, exact destination, retention and expiry; emergency does not waive destination security.
Send an approved minimal dataset to a governed in-region processor for the recorded purpose.
Change region or tenant after approval, use a personal workspace or omit destination context.
Allow code generation and delivery automation while preserving review, provenance, protected branches, release authority and build-system integrity.
Deny agent actions that remove or bypass required reviews, status checks, signed commits, merge queue, force-push protection or restricted deletion on protected repositories and branches.
Add the agent app to the main ruleset bypass listBlock.
Force-push generated changes directly to the protected release branchBlock.
Use organisation-owned repository rulesets and app permissions that cannot administer protection. Require changes through pull/merge requests and destination-native checks.
A human incident owner may use a destination-native, logged bypass when configured; the coding agent cannot hold reusable bypass authority.
Create a feature branch and open a pull request that is subject to all required checks.
Disable the ruleset, self-add to bypass, dismiss a required review or force-push to the protected branch.
Hold workflow changes that add privileged runners, write tokens, untrusted third-party actions, secret access, production credentials or execution of fork-controlled code.
Change permissions: contents: read to contents: write and add pull_request_targetHold for security review.
Run a curl | sh step on a privileged production runnerHold.
Protect workflow paths with CODEOWNERS/rulesets, use isolated least-privilege runners and default read-only tokens. Evaluate third-party actions and images by immutable digest.
Approval covers exact commit, workflow permissions, runner and dependencies. Emergency changes use the protected repository process and remain reviewable.
Change a test command without altering permissions, events, runner class, secrets or external code sources.
Add write permission after approval, reference a floating untrusted action or expose secrets to fork-controlled code.
Deny publication or promotion of packages, containers and release artifacts that were not built by an approved builder from a reviewed commit or that fail required signing, provenance, malware and vulnerability policy.
Push local image to payments:latest in the production registryBlock.
Publish a package version without the protected release workflowBlock.
Allow protected publication only from the trusted build identity, verify signed provenance/attestations and make released versions immutable where supported.
A quarantined emergency artifact still requires known source, digest, independent approval and retrospective completion of evidence before broader promotion.
Publish a signed artifact from the approved builder with matching commit and passing policy.
Publish from a laptop, reuse a tag for a different digest or omit required provenance/scan evidence.
Hold production deploys and rollbacks unless approval is bound to the immutable artifact digest, target environment, release plan and valid change window.
Sync payments-prod to image digest sha256:…Hold until that digest and target are approved.
Deploy a different artifact after environment approvalHold again.
Use protected deployment environments and a deploy identity that accepts immutable digests only. Record downstream deployment result and preserve separation between requester and approver.
Incident rollback requires incident commander approval, exact rollback digest and compatibility evidence; approval expires with the incident window.
Deploy the exact approved digest to the approved environment during the window.
Change tag/digest, add a region, alter migration inputs or reuse approval for another service.
Deny commits, workflow changes, build output and artifacts that expose live secrets, private keys, tokens or restricted production data.
Push .env.production containing a live API keyBlock and rotate the credential.
Upload a debug artifact containing a production database dumpBlock.
Combine pre-receive/push protection, CI secret scanning, log masking and artifact DLP. Keep production data out of build identities and revoke exposed credentials through the system of record.
No disclosure exception. False positives can be reviewed using a fingerprint; live secret values remain prohibited.
Commit a documented placeholder or secret reference that cannot authenticate.
Encode a live key, expose it in logs or upload a dump through a build artifact or preview deployment.
Hold merge of any change authored or co-authored by a coding agent that touches authentication, authorisation, cryptography, secrets handling, CI workflows, infrastructure code or dependency manifests until a named human reviewer who did not prompt the agent has approved the exact diff. An agent may not approve, self-merge or dismiss reviews on its own change.
Copilot agent opens a pull request that rewrites the session-token validator and requests review from its prompterHold for a CODEOWNERS reviewer who did not prompt the change.
Agent-authored merge request adds a new transitive dependency with no provenance attestationHold until the package is reviewed and pinned.
Agent approves and merges its own change to the deploy workflowBlock the self-approval; route to a human reviewer.
Use rulesets with required reviewers and CODEOWNERS on protected paths, block self-approval and require provenance checks in CI. The control plane records the agent, session and prompter behind each change and holds merges before the repository rule applies.
Emergency fixes still require an independent human approval; the reviewer may be paged, but the agent and the prompter cannot approve.
Merge an agent-authored documentation or test-only change with one human approval, or a protected-path change approved by an independent CODEOWNERS reviewer.
Merge an agent-authored change to the auth module approved only by its prompter, or let the agent dismiss a review and merge its own workflow edit.
Let people use AI tools that are sanctioned and reached through the approved tenant, gateway or proxy, while stopping company data from leaving through unmanaged AI accounts and stopping unreviewed extensions, connectors, models and skills from entering the environment.
State of Shadow AI report. The research behind this pack: 78% of AI users bring their own tools, 63% of organisations have no AI governance policy, and shadow AI adds $670K to the average breach. Read the research
Deny pasting, uploading or synchronising company source code, customer records, credentials or confidential documents into an AI assistant account that is outside the organisation’s tenant, contract and data-processing agreement. A consumer subscription used for work is unmanaged regardless of who pays for it.
Paste a customer export into a consumer chatbot logged in with a personal emailBlock and point the user to the sanctioned tenant.
Connect a personal AI account to the company Google DriveBlock the OAuth grant at the identity provider.
Call a model API with a key that is not from the company organisation while a repository is in contextBlock when the request body contains protected content.
Combine tenant-restriction headers and identity-provider consent controls with endpoint and browser DLP for paste and upload. Intercept agent, CLI and MCP egress for content-aware decisions; the sanctioned tenant and the DLP boundary are the final controls.
No self-service exception. A team that needs a provider not yet sanctioned requests it through the AI tool intake process, which onboards an enterprise tenant rather than approving personal use.
Paste the same content into the sanctioned enterprise tenant of the same provider, or use a personal account for content classified as public.
Upload a confidential file to a personal account, grant a personal AI app access to company drive, or split a protected document across several pastes.
Hold installation or permission expansion of any browser extension that sends page content, form input or clipboard data to a model or third-party service until the publisher, permissions and data flow have been reviewed and the extension is on the managed allowlist.
Install a meeting-summary extension requesting access to all sitesHold for security review and allowlisting.
Extension update adds clipboard read and a new remote endpointHold the update as a new permission set.
Use browser management policies (install allowlist and blocklist, blocked permissions, forced installs) delivered through device management. The AI gateway records which sanctioned extensions may reach which model endpoints; the browser policy is the hard boundary.
A time-boxed pilot on a named device group with the extension’s data flow documented; the allowlist entry expires with the pilot unless renewed.
Install an allowlisted extension whose permission set matches the approved version.
Install an unlisted AI extension with broad host access, accept a permission-expanding update, or side-load the same extension from a folder.
Hold installation of any coding assistant, agent or IDE extension pulled from a public registry until its publisher is verified, its version is pinned and its permissions (workspace access, shell execution, network egress) are reviewed. Sanctioned assistants run under the organisation’s tenant with content exclusions configured.
Install a coding assistant from a look-alike publisher on Open VSXHold; publisher is not verified and the ID is not on the allowlist.
Sign in with a personal account in the company monorepoHold until the session uses the enterprise tenant.
Commit a settings file that allows every shell command without promptingHold for developer platform review.
Use editor enterprise policies (allowed extensions, allowed publishers, pinned versions) delivered by device management, and configure assistant content exclusions for sensitive paths. The control plane records the assistant, version and tenant behind each action; the editor policy is the hard boundary.
An engineering exception names the extension ID, version and device group, and expires within 30 days unless the extension is promoted to the allowlist.
Install a pinned, allowlisted assistant under the enterprise tenant and use it with content exclusions in place.
Install an unlisted extension with shell access, sign in with a personal account in a company repository, or disable permission prompts through a committed settings file.
Deny agents from connecting to an MCP server, plugin or connector that is not registered with the organisation’s gateway, and deny edits to agent configuration that add a direct server URL, command or credential bypassing that gateway. Sanctioned servers are reached through one endpoint with per-user credentials.
Add a third-party database MCP server with an embedded connection string to the project configBlock; the database is fronted by the gateway.
Agent edits its own MCP configuration to add a server it found in a READMEBlock the self-modification and record the attempt.
Run an MCP server from an unpinned package pulled at startupBlock until the package is registered and pinned.
Publish sanctioned servers through the MCP gateway with policy checks, roles and per-user credentials from the secret store. Protect agent configuration files with endpoint policy and repository rules; the gateway registry and network egress controls are the hard boundary.
Registering a new server through the gateway intake: publisher, version, exposed tools and credential model reviewed, then published to named roles. No exception for direct connections.
Connect to a registered server through the gateway endpoint and call a tool the caller’s role permits.
Add a direct server entry for a gateway-fronted system, launch an unregistered local server, or let the agent modify its own connector configuration.
Deny loading or executing a model, dataset, prompt package or agent skill from a public hub unless it comes from an approved publisher, uses a non-executable format or has passed the organisation’s scan, and is pinned by digest. A skill is executable content and is reviewed as code.
Load a pickle model from an unverified repository at notebook startBlock; require a scanned, digest-pinned safetensors artifact from the internal proxy.
Install a skill that grants shell and network tools from an unknown publisherBlock and route to skill review.
Pull a model by floating tag into the inference image buildBlock until the revision is pinned by digest.
Route model and skill downloads through an internal artifact proxy with scanning and digest pinning, and deny direct egress to public hubs from build and agent runtimes. The control plane blocks skill installation and runtime loads that skip the proxy; egress and proxy policy are the hard boundary.
Research use in an isolated sandbox with no company data or credentials, recorded as a sandbox load; promotion to any shared environment goes through the proxy and scan.
Load a scanned, digest-pinned safetensors model from the internal proxy, or install a skill from the internal reviewed catalogue.
Load an unscanned pickle model, install an unreviewed skill from a marketplace, or pull a model by floating tag directly from the hub.
Hold enablement of an AI feature inside a sanctioned SaaS product, and hold OAuth grants from AI applications to company data, until the data-processing terms, training opt-out, retention and tenant isolation have been reviewed and recorded. A feature a vendor switches on by default is treated as a new processor.
Enable a third-party AI summariser for all Teams meetingsHold for data-protection review and inventory entry.
User consents to an AI note-taker requesting read access to all Drive filesBlock user consent; route to admin consent workflow.
Switch on a generative feature that sends CRM records to an external modelHold until processing terms and region are recorded.
Use identity-provider app consent policies, SaaS admin controls and cloud app discovery to gate features and grants. The control plane records the approved feature and scope set; the consent policy and vendor admin setting are the hard boundary.
A workspace-scoped pilot with synthetic or public data, recorded in the inventory with an end date; production data requires the full review.
Enable a reviewed feature for the approved workspace with the recorded scopes and training opt-out in place.
Enable an unreviewed vendor AI feature tenant-wide, approve a broad-scope AI app consent at user level, or accept new training terms without review.
Permit AI assistants, agents, connectors and models that are on the sanctioned inventory and reached through the approved tenant, gateway or proxy, and record the actor, tool, version and action for every session so the organisation can answer who did what through which tool.
Generate code in a repository under the enterprise tenant with content exclusions appliedAllow and record the session and version.
Call a registered ticketing tool with a per-user credentialAllow and record actor, tool and matched policy.
Keep the sanctioned inventory as the source of truth and forward decision records to the SIEM. Discovery from browser management, cloud app discovery and identity-provider consent logs closes the gap between what is sanctioned and what is running.
None needed; this policy is the sanctioned path. Adding a tool to the inventory goes through the AI tool intake process.
Use an inventoried tool through its approved route and confirm a decision record exists for the action.
Use the same tool through a personal login or a direct endpoint; the action is evaluated by SA-01 to SA-05, not allowed under this policy.
Use agents for reconciliation and workflow preparation without allowing autonomous payments, bank-detail changes, excessive refunds or changes to posted books.
Deny agents from directly creating payees or changing bank account, beneficiary, wallet or payout details in a live financial system.
Replace vendor bank account using details from an inbound emailBlock direct execution.
Change a live connected account payout destinationBlock and use verified human workflow.
Keep supplier/payee master-data authority outside agent credentials. Route changes through verified call-back, maker-checker and cooling-period controls in the system of record.
No direct agent exception. Two authorised humans verify through an independent channel and execute in the finance workflow.
Prepare a payee-change request with redacted comparison data for human verification.
Apply the change, bypass verification or submit a payment to the newly supplied destination.
Hold payment, transfer, payout, payroll or disbursement instructions that involve a new payee, exceed delegated value or velocity limits, or create material cumulative exposure.
Release a $250,000 payment batchHold for two-person approval.
Retry a payout request with a new idempotency keyHold as a potential duplicate.
Use a finance-owned execution identity, destination-native dual approval, transaction limits and idempotency/duplicate controls. The agent can prepare but cannot be a maker and checker.
Emergency payment follows the documented financial authority matrix; approval binds to payee fingerprint, amount, currency and transaction identifier.
Create a draft payment within preparation permissions without releasing funds.
Release without two approvers, split around limits, change payee after approval or create a duplicate via retry.
Hold refunds, service credits, credit notes and write-offs that exceed the operator’s single-action or cumulative limit, lack a valid source transaction, or change destination.
Refund the full live charge after two prior partial refundsHold when cumulative amount exceeds authority.
Write off a receivable with no linked dispute or approvalHold.
Use provider/ERP roles, cumulative limits and a broker that links the decision to the original transaction. Record the downstream refund or credit identifier.
Approval covers source transaction, total cumulative value, destination and reason; changed values require reapproval.
Issue one valid refund within delegated authority to the original payment method.
Change destination, exceed cumulative limit, refund more than the remaining amount or reuse approval for another charge.
Deny deletion, overwrite or backdating of posted journals, settled transactions, invoices and audit records, and deny reopening a closed period through an agent identity.
Delete a posted journal from the closed quarterBlock; use reversal workflow.
Reopen FY26-Q4 to backdate an adjustmentBlock direct agent execution.
Use ledger permissions, close locks, append-only audit records and correction workflows in the financial system. Monitor attempts from all API and UI paths.
Period reopening is a controller-led workflow with documented rationale, independent approval and auditor-visible record; not an agent override.
Prepare a reversing journal in an open period for authorised review.
Delete or overwrite the original, reopen the period or remove evidence of the change.
Hold changes to live merchant accounts, settlement destinations, webhook endpoints, signing secrets, fraud rules and payment-routing configuration.
Point live webhooks at a new domain and reveal a new signing secretHold for payments and security approval.
Change settlement destination for the production entityHold for dual control.
Use provider-native restricted roles and approval where available; otherwise broker writes through a finance/security-owned service and verify the resulting configuration independently.
Incident changes remain dual-controlled, exact-diff approved and time-bound with mandatory post-change verification.
Read live configuration or change test-mode routing within delegated scope.
Change live settlement, weaken fraud controls, reveal signing material or alter approved values before execution.
Let agents research, draft and resolve routine work while requiring accountable review for broad communications, account-impacting changes and commercial commitments.
Hold production email/SMS sends, external-channel posts and public publication when they exceed the configured audience threshold or use a company publishing identity.
Send campaign launch-2026 to 180,000 contactsHold for campaign-owner approval.
Change an approved draft to status=publish after editing claimsHold again.
Separate drafting from sending/publishing credentials. Gate the native send/publish operation and verify audience plus content immediately before execution.
Approval covers exact content, audience snapshot, channel, sender and schedule with a short expiry.
Save a draft or send a test only to the approved internal test list.
Send to a real audience without approval, change the segment/content or split a large broadcast into smaller sends.
Deny customer-account reads and mutations unless the target tenant and account are bound to the operator’s assigned case, account scope or approved support role.
Use customer ID from another ticket to retrieve account detailsBlock.
Update an account outside the seller’s assigned territoryBlock unless a separately authorised role applies.
Use tenant-aware service APIs, scoped integration identities and source-system entitlements. Never expose a global customer-admin credential to the assistant.
A named escalation role may access specified tenants for a case and duration; approval does not grant global reusable access.
Read the minimum account fields for the customer attached to the assigned case.
Swap account ID, follow a relationship across tenants or act on an account with no assignment context.
Hold deletion, irreversible anonymisation, suspension, security reset or bulk entitlement removal for a live customer account.
Delete tenant acme-prod and all associated dataHold for account and data-owner workflow.
Reset MFA and sessions for every user in one enterprise tenantHold.
Use a customer-operations broker with soft-delete/recovery where possible, exact-target confirmation and native audit. Keep irreversible delete authority separate from normal support tools.
Security containment may suspend access with incident approval; permanent deletion still follows retention and account-owner review.
Disable one compromised token or perform a reversible action within documented support authority.
Delete/suspend the wrong tenant, change target after approval or remove all access using a broad selector.
Hold discounts, pricing changes, service-level promises, renewal terms and non-standard commitments that exceed the operator’s delegated authority or approved playbook.
Set a 45% discount where delegated authority is 15%Hold for commercial approval.
Promise a contractual 99.999% SLA in a final customer messageHold for legal/service-owner review.
Use CPQ/contract authority matrices and a send/sign gate tied to the exact proposal version. Agents may draft but cannot create binding acceptance or override pricing controls.
Approval covers the named account, exact values and document digest; changes require a new decision from the appropriate authority.
Prepare a standard quote within documented discount authority.
Increase discount, add non-standard terms after approval or send a binding offer under a different account.
Hold changes that grant premium capabilities, remove contracted access, alter seat counts materially or change an enterprise customer’s plan outside a verified order or support entitlement.
Move enterprise tenant from 100 to 1,000 seats without an orderHold.
Disable a contracted security feature for the whole tenantHold for customer owner approval.
Gate entitlement writes through an order/support-aware service and compare to contract state. Record the resulting subscription/entitlement version.
Approval covers tenant, exact entitlement delta, value and expiry; permanent exceptions must be reflected in the commercial system of record.
Apply a documented, low-value support extension within delegated authority.
Grant uncontracted premium access, remove contracted features or split extensions around limits.
Support drafting, research and administration while protecting restricted records and preserving human authority over employment, signature, payroll and legal-hold actions.
Deny agents from making or executing final hire, reject, promotion, compensation, performance, disciplinary or termination decisions. Agents may prepare evidence for an accountable human decision maker.
Reject 120 applicants solely from model rankingBlock final status changes.
Mark employee for termination and send noticeBlock agent execution.
Give assistants draft/read capabilities only for consequential stages. Require a named human decision record in the HR/ATS workflow before any status change or final communication.
None for autonomous decisions. The accountable human must decide and the system of record must capture that ownership.
Summarise interview evidence or draft a notice for authorised human review.
Set the final status, bulk reject from model score or send the decision without a verified human owner.
Deny retrieval, summarisation or disclosure of restricted personnel, medical, payroll, investigation, privileged or legal-matter records outside the user’s role, cohort or matter assignment.
Retrieve executive compensation using a general HR service accountBlock unless the acting user has the restricted role.
Summarise a privileged acquisition matter for a non-memberBlock.
Use subject/field permissions, matter walls, scoped search and separate credentials at source. Do not index restricted content into a broadly accessible assistant corpus.
A formal investigation/matter-access workflow grants named data classes and duration; it does not create broad reusable access.
Retrieve permitted fields for an assigned employee case or an explicitly assigned legal matter.
Use global search, guess record ID or follow links into an unassigned restricted cohort or matter.
Hold changes to salary, bonus, bank details, tax withholding, payroll runs and mass compensation imports until validated against approved HR events and reviewed by eligible people/payroll owners.
Import salary increases for 800 employeesHold for HR and payroll approval.
Change bank details and rerun the same pay cycleHold as high-risk sequence.
Use payroll-native maker-checker, validated HR-event linkage, anomaly detection and file/payment controls. Keep payroll-release credentials outside the assistant.
Emergency correction still requires two eligible approvers and binds to named employees, pay cycle, amount and destination.
Prepare a compensation-change file and show aggregate validation without revealing unnecessary individual data.
Release payroll without dual approval, change bank details and immediately pay, or edit values after approval.
Hold signature, acceptance or dispatch of contracts and binding legal instruments unless the exact document is approved and the signatory has authority for its entity, value and instrument type.
Send a $2M supplier agreement under the AU entityHold for legal review and authorised signatory.
Accept online terms using a shared company accountHold when acceptance binds the organisation.
Use e-signature roles, contract workflow and an authority matrix tied to entity/value. The agent can prepare envelopes but cannot impersonate or reuse a signatory credential.
Only the corporate delegation-of-authority process can approve; agent or chat consent is never a substitute for signatory authority.
Prepare a draft envelope with the authorised signatory for review, without sending.
Send or sign a changed document, swap counterparty/signatory or rely on a prior generic approval.
Deny agent removal of legal holds, retention locks or protected custodians and deny deletion of records that are held or have not reached an approved disposal event.
Disable retention lock then delete a custodian mailboxBlock.
Remove a folder from litigation hold to permit bulk deletionBlock.
Use immutable retention lock and records-manager roles separated from content owners and agents. Disposal runs from the records system only after hold and schedule checks.
No agent exception. Hold release requires the authorised legal matter process; disposal requires the records owner and preserved evidence.
Generate a disposition review list for records whose schedule has matured and have no active hold.
Remove a hold, shorten retention or delete any held record even through a different connected system.
These controls depend on resolved targets, fail-closed ambiguity, action-bound approval and an evidence-grade record.
Review the shared baselineA serious policy is more than a keyword match. It resolves the identity, target, environment and blast radius, then verifies the downstream result.
Read the rollout guideThese are enterprise control patterns, not deployable Tracelet configuration or legal advice. Tool names show where a policy may apply; they do not claim every connector or action ships today. Replace example thresholds and approval windows with your own, verify tool and action coverage, and keep the authoritative deny or permission boundary in the destination system.
Each policy begins with a real failure mode, resolves the effective identity and target, and then makes a fail-closed decision with an accountable owner. The model is informed by NIST Zero Trust Architecture and OWASP guidance on excessive agency and sensitive information disclosure .