Security & Compliance
Mailneo is built with security and compliance at its core. This guide covers authentication security, data protection measures, and how to stay compliant with email regulations like GDPR and CAN-SPAM.
Authentication Security
Password Requirements
All passwords must meet these requirements:
- Minimum 8 characters
- At least one uppercase letter
- At least one lowercase letter
- At least one number
- At least one special character
Passwords are hashed using bcrypt with a cost factor of 12. Plain text passwords are never stored.
Two-Factor Authentication (2FA)
Add an extra layer of security with 2FA:
- Go to Settings → Security → Two-Factor Auth.
- Click "Enable 2FA".
- Scan the QR code with an authenticator app (Google Authenticator, Authy, 1Password).
- Enter the 6-digit code to verify.
- Save your recovery codes in a secure location.
Recovery Codes
When you enable 2FA, you receive 10 single-use recovery codes:
- Each code can only be used once
- Store them in a secure location (password manager)
- Regenerate codes anytime from Settings → Security
- If you lose access to your authenticator and codes, contact support
Session Management
Manage your active sessions:
- View sessions: See all devices where you're logged in
- Session details: Device type, browser, location, last activity
- Revoke sessions: Sign out from specific devices remotely
- Sign out all: Terminate all sessions except current one
Sessions expire after 30 days of inactivity. JWT tokens are refreshed automatically during active use.
Security Best Practices
- Enable 2FA on your account
- Use a unique password not used elsewhere
- Review active sessions regularly
- Sign out when using shared devices
- Keep recovery codes in a secure location
OAuth & Email Account Security
OAuth Connections
When connecting Gmail or Outlook accounts:
- Secure OAuth flow: We never see or store your email password
- Token encryption: OAuth tokens are encrypted using AES-256-GCM
- Minimal permissions: We request only necessary scopes for email access
- Token refresh: Tokens are refreshed automatically before expiration
IMAP/SMTP Credentials
For IMAP/SMTP connections:
- Credentials are encrypted at rest using AES-256-GCM
- Connections use TLS/SSL for transport security
- App-specific passwords recommended where available
- Credentials are only decrypted when establishing connections
Revoking Access
- Go to Settings → Email Accounts.
- Find the account to disconnect.
- Click "Disconnect" and confirm.
- For OAuth accounts, also revoke access from your Google/Microsoft account settings for complete removal.
Data Protection
Encryption
| Data Type | Protection |
|---|---|
| Data in transit | TLS 1.3 encryption |
| Data at rest | AES-256 encryption |
| Passwords | bcrypt hashing (cost 12) |
| OAuth tokens | AES-256-GCM encryption |
| IMAP credentials | AES-256-GCM encryption |
| API keys | SHA-256 hashing (stored), shown once |
Data Retention
- Account data: Retained while account is active
- Email content: Synced emails follow your email provider's retention
- Analytics data: Campaign metrics retained for 2 years
- Audit logs: Security events retained for 1 year
- After cancellation: Data deleted after 30-day grace period
Data Export
Export your data anytime:
- Go to Settings → Data & Privacy.
- Click "Export My Data".
- Choose what to include (contacts, campaigns, analytics).
- Receive a download link via email when export is ready.
Exports are provided in standard formats (CSV, JSON) for portability.
Data Deletion
Request complete data deletion:
- Go to Settings → Data & Privacy.
- Click "Delete My Account".
- Confirm by entering your password.
- All data is permanently deleted within 30 days.
This action is irreversible. Export your data first if needed.
API Security
API Key Management
- Create keys: Generate API keys in Settings → API Keys
- Name your keys: Use descriptive names (e.g., "Production Server", "Zapier Integration")
- Copy immediately: Full key shown only once at creation
- Revoke unused keys: Delete keys that are no longer needed
Rate Limiting
| Plan | Rate Limit | Burst |
|---|---|---|
| Starter | 60 requests/min | 100 |
| Professional | 100 requests/min | 200 |
| Business | 300 requests/min | 500 |
Rate limit headers are included in API responses. Implement exponential backoff when receiving 429 responses.
API Key Security
- Never commit API keys to version control
- Use environment variables for key storage
- Rotate keys periodically
- Use separate keys for different environments
- Monitor API usage for unexpected patterns
Email Compliance
Mailneo provides tools to help you comply with email regulations. It's your responsibility to ensure your email practices meet legal requirements in your jurisdiction.
GDPR Compliance
For EU recipients, GDPR requires:
- Lawful basis: Obtain consent or have legitimate interest before emailing
- Consent records: Mailneo tracks when and how consent was given
- Right to access: Export subscriber data on request
- Right to erasure: Delete subscriber data on request
- Data portability: Provide data in standard formats
Double Opt-In
Enable double opt-in for stronger consent:
- Go to your newsletter settings.
- Enable "Require email confirmation".
- Customize the confirmation email if needed.
- Only confirmed subscribers are marked as active.
Double opt-in provides proof of consent and improves list quality.
CAN-SPAM Compliance
For US recipients, CAN-SPAM requires:
- Clear sender: Accurate "From" name and email
- Honest subject: Subject line must reflect content
- Physical address: Include your postal address (Mailneo adds automatically)
- Unsubscribe link: Clear opt-out mechanism (Mailneo adds automatically)
- Honor opt-outs: Process within 10 days (Mailneo processes immediately)
CASL Compliance (Canada)
For Canadian recipients:
- Express consent required (not just implied)
- Clear identification of sender
- Unsubscribe mechanism in every message
- Physical contact information
Unsubscribe Handling
Automatic Unsubscribe
Mailneo automatically handles unsubscribes:
- One-click unsubscribe: List-Unsubscribe header added to all emails
- Footer links: Unsubscribe link in every campaign email
- Instant processing: Unsubscribes take effect immediately
- Preference center: Let subscribers manage which lists they receive
Suppression Lists
Suppressed contacts won't receive emails:
- Unsubscribed: Opted out from emails
- Bounced: Hard bounced addresses
- Complained: Marked email as spam
- Manual: Added to suppression list by you
View and manage suppression lists in Settings → Compliance.
Audit & Logging
Security Audit Log
Mailneo logs security-relevant events:
- Login attempts (successful and failed)
- Password changes
- 2FA enable/disable
- API key creation/deletion
- Email account connections
- Team member changes
- Data exports and deletions
Viewing Audit Logs
- Go to Settings → Security → Audit Log.
- Filter by event type, date range, or user.
- View details including IP address and user agent.
- Export logs for compliance documentation.
Audit logs are retained for 1 year and cannot be modified or deleted.
Infrastructure Security
Platform Security
- Hosting: Cloud infrastructure with SOC 2 compliance
- Network: DDoS protection and WAF
- Database: Encrypted backups, point-in-time recovery
- Monitoring: 24/7 infrastructure monitoring
- Updates: Regular security patches and updates
Incident Response
In the event of a security incident, we follow a documented response process including containment, investigation, and notification. Affected users are notified within 72 hours as required by GDPR.
Reporting Security Issues
Responsible Disclosure
If you discover a security vulnerability:
- Email security details to our security team
- Include steps to reproduce the issue
- Allow reasonable time for us to respond and fix
- Don't disclose publicly until fixed
We appreciate responsible disclosure and will acknowledge researchers who report valid vulnerabilities.