Security

How CitraInsight protects your data at every layer

1. Encryption at Rest

AES-256 Encryption

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.

2. Encryption in Transit

TLS 1.3

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.

3. Agent Credential Protection

Windows DPAPI

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.

4. Authentication & Access Control

LayerMechanism
Admin loginEmail + password with bcrypt hashing (salt per user)
Session tokensJWT (HS256) with 60-minute expiry + 7-day refresh tokens
Agent authUnique API key per organisation, DPAPI-encrypted on endpoint
OTP verification6-digit OTP via AWS SES, 10-minute expiry, rate-limited (3/hour)

5. Role-Based Access Control (RBAC)

CitraInsight implements a granular RBAC system with 31 atomic permissions across the following roles:

RoleDescription
Super AdminFull access — manage admins, billing, settings, all data
AdminManage systems, view all data, generate reports
AnalystView dashboards and reports, no system management
ViewerRead-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.

6. Agent Permissions & Restrictions

What the agent CAN do:

What the agent CANNOT do:

7. Audit Trail

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.

8. Infrastructure Security

9. Data Isolation

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.

10. Backup & Recovery

11. Incident Response

  1. Detection: Automated monitoring for anomalous access patterns, failed auth attempts, and API abuse
  2. Containment: Immediate isolation of affected systems
  3. Notification: Data Protection Board of India notified within 72 hours; affected customers notified without unreasonable delay
  4. Remediation: Root cause analysis and fix deployed
  5. Post-mortem: Written report provided to affected customers

12. Vulnerability Reporting

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