Security
How Magic CRM keeps each organization's data separate, what the AI assistant can and cannot do with it, and how your account is protected.
Magic CRM is built so that an AI assistant can work in your CRM as you, with your permissions and no more. That only works if the permissions are enforced in one place that nothing can go around. Four principles follow from that, and they shape everything below.
The four principles
- The database is the only boundary between organizations. Every record belongs to one organization, and the database itself decides, for every request, which records the person asking may see or change. The app has no permission checks of its own that could be forgotten, and our servers hold no key that can bypass the database’s rules.
- The AI acts as you, never with more access. When you connect an AI assistant, it works with your own sign-in, in the organization you choose. It sees exactly what you see and can do exactly what you can do.
- Guardrails live in the database, not only in the app. Where a rule matters, such as “the assistant may read but not write” or “an organization always keeps an owner”, the database enforces it. An instruction to an AI model can be talked around; a database rule cannot.
- AI output is a draft until a person approves it. Notes, quotes and emails the assistant writes stay drafts until someone in your team reviews them. Every figure on a dashboard shows the question that produced it, so it can be checked.
Your organization’s data
- Separation. Data from different organizations lives in the same database, separated by the database’s own row-level rules, which apply to every request, from every part of the system.
- Encryption in transit. Connections to Magic CRM use TLS.
- Encryption at rest. Our database provider, Supabase, encrypts all stored data, including backups, with AES-256 under keys it manages.
- Extra encryption for calendar access. When you connect your Outlook calendar, the access tokens Microsoft gives us are additionally encrypted by Magic CRM, with a key that is not stored in the database.
- On your devices. The app keeps the records you have opened on your device, so it keeps working without a connection. Signing out removes them. Your device’s screen lock and disk encryption protect that copy in the meantime.
The AI assistant
- Your consent, your permissions. An assistant such as Claude or ChatGPT connects only after you approve it on a Magic CRM consent screen. From then on it acts with your access and in the organization you picked, and it loses access to an organization the moment you leave it.
- Read-only questions. When the assistant asks the database a question of its own, the database runs it read-only. The question cannot change anything, even indirectly, and each one has a limit on the rows it returns and on how long it may run.
- Shared dashboards share the question, not the data. A dashboard runs as the person viewing it. Two colleagues can open the same dashboard and see different numbers, because each sees only what they are allowed to see.
- Widgets cannot reach the internet. Charts and tables the assistant draws run in a sandbox with no network access; their data comes only from Magic CRM.
What the assistant reads is sent to the AI provider you chose, under your own agreement with that provider.
Your account
- Signing in. With Google or Microsoft, with a link sent to your email, or with an email address and a password. An email address must be confirmed before the account can see anything.
- Sessions last seven days. After that, you sign in again.
- Passwords. At least 10 characters. When an administrator resets a member’s password, every session of that account ends at once, and the reset is recorded.
Integrations
- Business Central. The sync agent runs on your own server and signs in to Magic CRM with an account of its own, which can reach only the records the sync needs. On Windows, its secrets are encrypted so that a copy of its configuration file cannot be used on another machine.
- Outlook calendar. The calendar sync has its own account too, limited to the calendars of the people who connected one. Private events are stored without their title or place.
How we build it
- No secret is kept in our code.
- Dependencies and container images are scanned for known vulnerabilities before a release.
Questions and reports
To report a security issue, see Responsible disclosure. If you are evaluating Magic CRM and have a security questionnaire, send it to the address below and we will answer it.
The vendors that process data for Magic CRM are listed under Sub-processors.
- Responsible disclosure
How to report a security vulnerability in Magic CRM, and what you can expect from us.
Security contactcontact@magic-crm.ro