Leave a comment at the end of this page or email contact@krishagni.com
Cloud Hosting Architecture
Krishagni provides cloud hosting services to Amazon Web Services (AWS) customers. The AWS data centre location is decided based on the customer’s country.
Country-Specific Data Centres
We deploy OpenSpecimen in one of the three data centres below based on the country of the client:
AWS Oregon for the USA
AWS Frankfurt for Europe
AWS Sydney for Australia
SOC2 Type 2 Certification
SOC 2 is a voluntary compliance standard for service organizations, developed by the American Institute of CPAs (AICPA), which specifies how organizations manage customer data. The standard is based on the following Trust Services Criteria: security, availability, processing integrity, confidentiality, and privacy.
Refer to Krishagni’s SOC2 certification announcement here.
Hosting Overview
Two-Factor Authentication
Local OpenSpecimen user accounts are 2FA enabled. Users can use any app, such as Google Authenticator, Duo, or Microsoft Authenticator.
Data Backup
Frequency: Daily full backups (app and DB) for both Test and Prod environments.
Retention: Daily backups are retained for 14 days.
Location: Encrypted and stored in geographically redundant data centers.
Data Encryption: All backups are encrypted both at rest and in transit (AES-256).
Data Handover Termination
All customer data retained for a maximum of 30 days post contract end for export.
All servers and data (including backups) are permanently deleted post termination.
API Access
OpenSpecimen supports REST APIs over HTTPS. API users can access the APIs using a URL, username, and password. API access can be restricted to originate from a specific IP address or range.
Data Isolation Architecture
OpenSpecimen is deployed as a Dedicated Single-Tenant Instance to enforce strict data isolation. While hosted within a managed AWS Virtual Private Cloud (VPC), all compute, database, and storage assets remain 100% dedicated to your organization.
Note: We do not support multi-tenancy where one OpenSpecimen instance is storing data from multiple customers.
Dedicated Application Compute: Your OpenSpecimen instance (Tomcat/Java runtime) runs on dedicated Amazon EC2 virtual machines or isolated container tasks. No application code, memory space, or runtime processes are shared with any other customer.
Dedicated Database Engine: Biospecimen data, clinical metadata, and audit logs reside on a standalone AWS MySQL RDS database instance dedicated exclusively to your organization, eliminating cross-tenant database risks.
Isolated File Storage: Uploaded files (pathology sheets, consent forms, images) are stored in dedicated Amazon S3 buckets, protected by strict AWS IAM access policies and AWS KMS encryption at rest.
Logical Network Micro-Segmentation: Network isolation inside the VPC is enforced using stateful AWS Security Groups and Network ACLs. Backend database ports accept connections only from your dedicated application server instance, blocking all adjacent network traffic.
Seamless Enterprise Integration: Connects directly with your institutional Identity Provider (Azure AD, Okta, Shibboleth) via SAML 2.0 / OAuth for single sign-on, ensuring full compliance with HIPAA, GDPR, and 21 CFR Part 11 standards.
Backup segregation
Krishagni segregates OpenSpecimen backups by taking full, automated AWS snapshots of your dedicated EC2 application servers and RDS database instances. Because your infrastructure is completely dedicated to your organization, your snapshots contain exclusively your data, encrypted with dedicated AWS KMS keys. This provides maximum backup isolation and enables near-instant, clean system restoration whenever required.
Encryption key management
OpenSpecimen's key management architecture uses AWS KMS for hardware-backed envelope encryption across all database volumes, file storage (S3), and instance snapshots. Keys are tenant-isolated, support automated rotation, and log every cryptographic operation to AWS CloudTrail. Application-level secrets and user credentials are independently protected using salted key-stretching hashes (PBKDF2/BCrypt) and encrypted configuration vaults.
Administrative access controls
OpenSpecimen's administrative access control architecture combines hierarchical domain boundaries (Super Admin $\rightarrow$ Institute Admin $\rightarrow$ Site/Protocol Admin) with granular Role-Based Access Control (RBAC). This ensures that system-wide configuration, institutional management, and protocol administration are strictly compartmentalized, fully auditable, and decoupled from unprivileged PHI access.
For more details: Roles and Privileges