Security FAQ
Security best practices and frequently asked questions for OpenDev integration.
Authentication Security
Q: How are user credentials stored?
A: OpenDev follows industry best practices:
- Passwords: Never stored directly; OAuth providers handle authentication
- Tokens: Encrypted using AES-256-GCM before storage
- Sensitive data: Encrypted at rest and in transit (TLS 1.3)
- Keys: Stored in secure environment variables, never in code
Q: What authentication methods are supported?
A: Supported authentication methods:
| Method | Use Case | Security Level |
|---|---|---|
| OAuth 2.0 | Social login | High |
| JWT Tokens | API authentication | High |
| Session Tokens | Web applications | High |
| API Keys | Server-to-server | Medium-High |
Q: How long are tokens valid?
A: Token validity periods:
- Access tokens: 1 hour (configurable)
- Refresh tokens: 30 days
- Session tokens: 24 hours (configurable)
- API keys: Until revoked
Q: How do I secure my API keys?
A: API key security best practices:
- Never expose in client code: Use server-side API calls
- Environment variables: Store keys in
.envfiles - Key rotation: Rotate keys periodically
- Scope limitation: Use keys with minimum required permissions
- Monitoring: Track API key usage for anomalies
Data Security
Q: Is my data encrypted?
A: Yes, OpenDev uses multiple encryption layers:
- In Transit: TLS 1.3 for all communications
- At Rest: AES-256 encryption for sensitive data
- Database: Encrypted fields for tokens, credentials
- Backups: Encrypted backup storage
Q: What data does OpenDev collect?
A: Data collection is minimal:
| Data Type | Purpose | Retention |
|---|---|---|
| User ID | Authentication | Account lifetime |
| Account recovery | Account lifetime | |
| OAuth tokens | API access | Until expiry |
| Audit logs | Security monitoring | 90 days |
Q: How do I comply with GDPR/Privacy regulations?
A: GDPR compliance features:
- Data export: Users can request their data
- Data deletion: Right to be forgotten implementation
- Consent management: Explicit consent for data collection
- Data minimization: Only collect necessary data
- Breach notification: 72-hour notification process
Q: Can I request data deletion?
A: Yes, data deletion process:
- User submits deletion request
- Verification of identity
- Data removal within 30 days
- Confirmation email sent
Application Security
Q: How do I protect against CSRF attacks?
A: CSRF protection measures:
- State parameter: Always use state in OAuth flows
- CSRF tokens: Include in forms and AJAX requests
- SameSite cookies: Use
SameSite=Strictattribute - Origin validation: Verify request origins
// Example: OAuth with state parameter
const state = generateSecureRandom();
session.oauthState = state;
const authUrl = `${provider}/auth?state=${state}&...`;
Q: How do I prevent XSS vulnerabilities?
A: XSS prevention best practices:
- Output encoding: Escape all user input before display
- Content Security Policy: Implement strict CSP headers
- Input validation: Validate and sanitize all inputs
- HTTPOnly cookies: Prevent JavaScript access to session cookies
<!-- CSP Header Example -->
Content-Security-Policy: default-src 'self';
script-src 'self' 'unsafe-inline';
style-src 'self' 'unsafe-inline';
Q: What rate limiting is in place?
A: Rate limiting configuration:
| Endpoint Type | Limit | Window |
|---|---|---|
| Authentication | 5 requests | 15 minutes |
| API endpoints | 100 requests | 1 minute |
| OAuth callbacks | 10 requests | 1 minute |
| File uploads | 10 requests | 1 hour |
Q: How do I secure webhook endpoints?
A: Webhook security measures:
- Signature verification: Validate HMAC signatures
- IP whitelisting: Restrict to provider IPs if available
- HTTPS only: Require TLS for webhook URLs
- Idempotency: Handle duplicate deliveries safely
// Example: Webhook signature verification
function verifyWebhookSignature(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}
Infrastructure Security
Q: Where is the data hosted?
A: Infrastructure details:
- Primary: Secure cloud infrastructure (AWS/Aliyun)
- Regions: Multiple availability zones
- Compliance: SOC 2, ISO 27001 certified data centers
- Backups: Daily encrypted backups with 30-day retention
Q: Is the infrastructure monitored?
A: Monitoring includes:
- Real-time alerts: Anomaly detection
- Log analysis: Centralized logging with 90-day retention
- Uptime monitoring: 99.9% SLA
- Security scanning: Regular vulnerability assessments
Q: How are security incidents handled?
A: Incident response process:
- Detection: Automated monitoring alerts
- Analysis: Security team investigation
- Containment: Immediate threat mitigation
- Communication: User notification within 72 hours
- Recovery: System restoration and post-mortem
Compliance & Auditing
Q: What compliance certifications are available?
A: Current certifications:
- SOC 2 Type II
- ISO 27001
- GDPR compliant
- PCI DSS (for payment processing)
Q: How can I audit API access?
A: Auditing capabilities:
- Audit logs: All API calls logged with timestamps
- User actions: Track user activities
- Admin actions: Privileged action logging
- Export: Download audit logs in CSV/JSON format
Q: How do I report a security vulnerability?
A: Responsible disclosure:
- Email: contact@zinben.com
- PGP encryption: Available for sensitive reports
- Response time: 48-hour acknowledgment
- Bug bounty: Rewards for valid vulnerability reports
Last updated: January 2026