Security is built into every layer of Oido Studio — not added on top. This page describes our technical controls, infrastructure practices, and how to report vulnerabilities. We believe transparency about security practices helps organisations make informed decisions.
1. Encryption
In transit — All communication between clients and Oido is encrypted with TLS 1.2 or higher. We enforce HTTPS on all endpoints with HSTS headers. Internal service communication uses encrypted channels.
At rest — All credentials stored in Oido (API keys, channel tokens, integration secrets) are encrypted using AES-256-GCM before being written to the database. The encryption key is derived from a secret unique to each deployment, never stored alongside the data.
Passwords — User passwords are hashed with bcrypt before storage. We never store plaintext passwords and cannot recover them.
2. Organisation Isolation
Every piece of data in Oido is scoped to an organisation. This isolation is enforced at multiple levels:
- Database — All queries include organisation ID filters. Row-level scoping prevents cross-org data leakage even in the event of query errors
- Agent execution — Each organisation's agents run in isolated sandbox environments. File system access is restricted to a per-org workspace directory
- Credentials — API keys and tokens are stored per-org and never returned in API responses after initial save (only masked values are shown)
- Sessions — Session data, conversation history, and agent logs are strictly scoped — one org cannot access another's data under any circumstances
3. Sandboxed Execution
When agents execute shell commands or run tool integrations, they operate inside isolated sandbox environments:
- Each agent run uses a clean environment with no access to server secrets
- Shell commands run inside Linux user namespaces with a private
/proc filesystem — the agent cannot read server environment variables or process information - File operations are restricted to the organisation's workspace directory. Path traversal attempts are blocked at the tool level
- MCP servers and extension processes start with a minimal environment containing only the credentials you explicitly configured
- Storage quotas are enforced per organisation based on subscription tier
4. Authentication and Access Control
- JWT tokens — Access tokens expire after 15 minutes. Refresh tokens expire after 7 days and are hashed before storage
- Role-based access — Each organisation member has a role (owner, admin, member). Permissions are enforced server-side on every request
- Team sandboxes — Owners can restrict which agents and extensions team members can access
- SSO/SAML — Available on Enterprise plans for integration with your identity provider
- Invite tokens — New member invitations use single-use time-limited tokens. No password is set until the user activates via the token
5. Infrastructure Security
- Services run inside Docker containers with minimal privilege
- Database access is restricted to application services via credential-based authentication with TLS
- No SSH access to production infrastructure from developer machines
- Dependency updates are reviewed and applied regularly
- Rate limiting is applied at the API gateway level (2.5 req/s per IP, configurable per tier)
- Security headers (HSTS, CSP, X-Frame-Options, X-Content-Type-Options) are applied on all responses
6. Data Practices
- Production data is not used in development or testing environments
- Access to production systems is limited to authorised personnel with audited access
- Database backups are encrypted and retained for 30 days
- Logs are retained for 90 days and contain no user content — only operational metadata
- We do not log request bodies that may contain sensitive data
7. Third-Party Security
Oido connects to third-party AI providers and tools. Their security practices are independent of ours. We recommend:
- Using API keys with the minimum required permissions for each provider
- Rotating API keys periodically or after a team member departure
- Reviewing each provider's data handling policy for data you send through agents
- Using channel-specific bot tokens rather than user account tokens where possible
8. Responsible Disclosure
We take security reports seriously. If you discover a vulnerability in Oido Studio, please report it responsibly:
- Email security@oido.ai with a description of the issue
- Include steps to reproduce, potential impact, and any relevant screenshots or logs
- Do not exploit the vulnerability or access data belonging to other users
- Allow us reasonable time to investigate and address the issue before public disclosure
We will acknowledge reports within 48 hours and provide a timeline for resolution. We credit researchers who help improve Oido's security.
9. Compliance
Oido Studio is designed to support compliance with common data protection frameworks:
- GDPR — Data subject rights, data minimisation, and processor agreements available for EU customers
- CCPA — Data deletion and portability rights available to California residents
- SOC 2 Type II — Audit in progress. Contact us for current status
- Enterprise DPA — Data Processing Agreements available for Enterprise tier customers
10. Contact
Security reports: security@oido.ai
Compliance enquiries: legal@oido.ai