Per-client isolation in internal tools
Ownership filters and access rules per matter / engagement / account. We verify the database query carries the right WHERE, not just the UI.
Your team built a client portal, a contract-review assistant or an intake bot with Cursor, v0 or Lovable. We audit it before one client reads another client's code.
Law firms, consultancies, accounting practices and marketing agencies have leaned on AI tools to build internal assistants: contract review, billing automation, client portals, intake bots, draft generation. The speed is attractive. The problem shows up when two clients share the same codebase and a sloppy ownership filter gives client A’s documents to client B’s team.
We audit what your team built with the sector lens on: professional secrecy, audit trails for regulators, custody of privileged material, and the spots where the AI accepted as ‘good enough’ a layer of security that a professional bar wouldn’t accept on review.
Ownership filters and access rules per matter / engagement / account. We verify the database query carries the right WHERE, not just the UI.
Logs of which document was opened, which query ran, which draft was generated and who approved it. Ready for a bar review or a data protection audit.
We look for sensitive context being sent to the model, retention in platform logs, and names / IDs / matter numbers in console.log statements that survived the build.
Read/write permissions of the AI agent on iManage, NetDocuments, Clio, QuickBooks, Xero and similar — what it can touch, what it must never touch, with explicit deny rules.
The assistant worked for partners and associates. The UI filtered matters by user; the SQL queries didn't. Any authenticated lawyer could request ‘matter id 4729’ via the API and get a reply, whether it was theirs or not. Debug console.log statements — including names and matter IDs — were streaming to the platform's log viewer.
12 findings. 4 criticals resolved before the wider rollout: ownership filter added at the SQL layer, PII stripped from logs, RLS policies on the matters table, rotation of keys that had been living in the client bundle. Remaining findings documented with a fix order and timeline.
Mid-market CRM with broad APIs — a natural fit for sales agents and lead enrichment.
Enterprise CRM with fine-grained permissions — AI workflows that respect the data model.
CRM with strong adoption among Spanish SMBs — automations and agents at a contained cost.
Enterprise CRM/ERP suite in the Microsoft ecosystem — native fit with 365 and Power Platform.
Spanish cloud ERP widely adopted by SMBs — invoicing, expenses and reconciliation automation.
Modular open-source ERP — AI agents and workflows on top of sales, inventory and project modules.
Email, calendar and SharePoint as channel and context — triage, drafting and RAG over your inbox and files.
Under NDA, with read-only repository access. We don't clone to personal devices, we don't train models on your code and we don't subcontract. If you need stricter access (VPN, secure room), we'll set it up.
The report documents findings, severity, what was fixed and what remains — useful evidence of due diligence. It doesn't replace a legal audit if your bar or regulator requires one specifically, but the two complement each other.
Depends how. If documents flow into the prompt and the conversation stays in platform logs, yes. We audit what reaches the logs, what's retained by the model provider and what deletion policy you have contractually.
Yes. We audit the connectors your team built — what permissions they asked for, what they can modify, how they handle errors. If your integration isn't standard, we read it the same way we read any other code.
We design for privacy from the start, human control, traceability, usage limits, permissioning and documentation. For sensitive processes, we help assess risk and applicable obligations under GDPR and the EU AI Act.
Every engagement is led personally by one of the partners. If there's a fit, you get a personal first read of your case within one business day — not a canned demo.