Core Principles: Don't Collect, Don't Store, Don't Upload
Three non-negotiable constraints built into iDeviceFarm:
- No business data collection: Your device info, task content, and execution logs stay inside your local environment—we have no backend service receiving this data because we don't need one.
- No screenshots persisted: Zero screenshot storage anywhere in the pipeline. Device photos and screen captures are never written to disk or databases.
- No data selling: No ad profiling, no behavioral tracking, no selling data to anyone. The free version offers the same privacy guarantees as everything else.
On-Prem Deployment = Data Stays In-House
iDeviceFarm ships in two delivery formats, both on-premise:
| Format | Description | Best for |
|---|---|---|
| Windows portable | Double-click exe, SQLite single-file storage, no Docker needed | Individuals / small teams / quick evaluation |
| Docker Compose standard | docker compose up -d launches app + mysql:5.7 + redis | Enterprise intranets / multi-user collaboration |
Regardless of format, the runtime lives entirely under your control—whether that's your local PC or an internal server. That means:
- Physical isolation: Data never crosses your hardware boundary.
- Auditability: For compliance reviews, inspect database contents and log files directly.
- Offline-ready: Works without internet as long as devices connect via USB/Wi-Fi.
Multi-Tenant Architecture: Managing Teams At Scale
Many studios start with 3–5 phones and grow to dozens or hundreds. At that point, who manages what, and who sees what becomes a real challenge. iDeviceFarm's multi-tenant + RBAC solves this:
Domain model:
Tenant
└── Department (tree)
└── User ──<many-to-many>── Role
└── Menu (tree, includes routes/buttons)
└── Permission (API/button identifiers)Practical role assignments:
| Role | Access Scope | Typical User |
|---|---|---|
| super_admin | All permissions (cross-tenant) | IT director / superadmin |
| admin | Full tenant business | Department administrator |
| operator | Devices/tasks/AI | Operations staff |
| viewer | Read-only access | Auditors / non-technical users |
Key feature: all business data carries a tenant_id, enforcing strict isolation between tenants. Even on the same server deployment, Tenant A's devices and tasks are invisible to Tenant B.
Authentication & Session Security
Login flow includes targeted hardening:
- Three-factor login: tenant_code + username + password—all required.
- Anti-enumeration: Generic error message ("invalid account or password") hides whether the tenant or password was wrong.
- Rate limiting: Automatic temporary lockout after repeated failures.
- JWT sessions: Standard edition supports Redis blacklisting; portable edition manages via embedded DB.
On-Prem vs. Cloud Comparison
Why are more teams moving from cloud phone-control services to on-premise deployments?
| Dimension | Cloud Solution | On-Prem (iDeviceFarm) |
|---|---|---|
| Account security | Data passes through provider servers | Never leaves your environment |
| Operation logs | Stored on their infrastructure | Live on your own machine |
| Compliance audit | Must request evidence from provider | Directly inspect local DB |
| Scaling | Just rent more capacity | Add devices + redeploy if needed |
Bottom line: data security isn't a feature—it's an architectural decision. Choosing on-premise deployment means choosing the certainty that "your data stays yours."