How CitraInsight protects your data at every layer
All data stored in the CitraInsight database is encrypted at rest using AES-256, the same standard used by banks and government agencies. Database-level encryption is managed by DigitalOcean’s managed PostgreSQL service with encrypted storage volumes.
All communication between agents and the CitraInsight server uses TLS 1.3. Older TLS versions (1.0, 1.1) are rejected. Certificate pinning is enforced on the agent side to prevent man-in-the-middle attacks. All API endpoints are HTTPS-only.
Agent authentication tokens are encrypted using the Windows Data Protection API (DPAPI), tied to the machine’s system account. Tokens are never stored in plaintext. Even if the agent binary is copied to another machine, the token cannot be decrypted.
| Layer | Mechanism |
|---|---|
| Admin login | Email + password with bcrypt hashing (salt per user) |
| Session tokens | JWT (HS256) with 60-minute expiry + 7-day refresh tokens |
| Agent auth | Unique API key per organisation, DPAPI-encrypted on endpoint |
| OTP verification | 6-digit OTP via AWS SES, 10-minute expiry, rate-limited (3/hour) |
CitraInsight implements a granular RBAC system with 31 atomic permissions across the following roles:
| Role | Description |
|---|---|
| Super Admin | Full access — manage admins, billing, settings, all data |
| Admin | Manage systems, view all data, generate reports |
| Analyst | View dashboards and reports, no system management |
| Viewer | Read-only access to assigned data only |
Permissions are enforced server-side on every API request. The dashboard UI hides controls the user cannot access, but the real enforcement happens at the API layer.
What the agent CAN do:
What the agent CANNOT do:
Every administrative action in CitraInsight is logged with:
This creates a tamper-evident, append-only hash chain. If any log entry is altered or deleted, the chain breaks and the tampering is immediately detectable.
All organisation data is logically isolated at the database level. Every query is scoped to the authenticated organisation’s ID. There is no cross-tenant data access. API keys are unique per organisation and cannot be used to access another organisation’s data.
If you discover a security vulnerability in CitraInsight, please report it responsibly. We take every report seriously.
Responsible Disclosure
For security-related questions, contact security@citrainsight.in