Information Security Policy
Last Updated: 2026-10-23 ยท Contact: security@mytraderdash.com
Purpose
This policy defines the security principles and practices that govern how myTraderDash protects user data, application infrastructure, and business operations.
Data Classification
Sensitive โ Brokerage access tokens, OIDC client secrets, API keys. Encrypted in transit, stored in environment files excluded from version control, never logged.
Personal โ User email, display name, trading history. Encrypted in transit, workspace-isolated, deletable on request.
Internal โ Application configuration, deployment settings. Access restricted to administrator.
Public โ Marketing site content, documentation. No restrictions.
Access Control
All user authentication is handled via OpenID Connect with Google, Apple, and Yahoo. No passwords are stored. All administrative systems require multi-factor authentication. Single administrator with direct access to infrastructure. All user data is scoped to a workspace, enforced in application middleware and at the database level with row-level security.
Infrastructure
Production runs on a dedicated server hosted by DigitalOcean in Toronto, Canada. The server publishes no application ports to the internet: all traffic arrives through an authenticated, encrypted Cloudflare Tunnel. SSH access uses key authentication only. The database and cache are reachable only on a private network internal to the server. Production runs prebuilt, version-pinned container images; no source code is stored on the server.
Encryption
In Transit โ Browser connections use TLS 1.2 or higher and HTTPS is enforced on all endpoints. Traffic between Cloudflare and the origin server travels through an encrypted tunnel.
At Rest โ Secrets are stored only in access-restricted environment files on the server, never in source control.
Vulnerability Management
Automated dependency scanning and updates via GitHub Dependabot.
npm security audit via GitHub Actions on every push and pull request.
Every change runs type checking, unit and integration tests, and end-to-end tests before it can be deployed, and production deploys are a separate, deliberate step.
Application Security
Input validation on API endpoints.
CORS origin allowlist.
Rate limiting on authentication endpoints, keyed on the client address supplied by Cloudflare.
Session security with HttpOnly, Secure, SameSite cookies and a Redis-backed session store; sessions are revoked on logout and account deletion.
PKCE on all OIDC flows.
Body size limits to prevent oversized request attacks.
Incident Response
1. Contain โ Isolate affected systems, revoke compromised credentials.
2. Assess โ Determine scope and whether there is a risk of serious harm.
3. Notify โ Inform affected users within 72 hours, and notify the relevant privacy regulator (Office of the Privacy Commissioner of Canada, Quebec's Commission d'accรจs ร l'information) where required.
4. Remediate โ Fix vulnerability, rotate credentials.
5. Review โ Document the incident and update practices.
Third-Party Services
DigitalOcean โ Hosting (Toronto).
Cloudflare โ Network security, DNS, tunnel.
Google, Apple, Yahoo โ OIDC sign-in (OAuth 2.0 + PKCE).
Google Gmail and Firebase โ Email and push notification delivery.
SnapTrade, Plaid โ Brokerage connections (tokenized access, TLS).
Stripe โ Payments (PCI-DSS compliant, no card data stored).
Policy Review
Reviewed when significant infrastructure changes occur, new integrations are added, after security incidents, or at minimum annually.
Contact
General โ admin@mytraderdash.com
Support โ support@mytraderdash.com
Privacy โ privacy@mytraderdash.com
Security โ security@mytraderdash.com