For the complete documentation index, see llms.txt. This page is also available as Markdown.

Security Best Practices

Keep your DotPassport integration secure.

API Key Security

Never Expose in Client Code

API keys should be treated as sensitive credentials:

// ❌ Bad - hardcoded API key
const client = new DotPassportClient({
  apiKey: 'dp_live_abc123xyz'
});

// ✅ Good - environment variable
const client = new DotPassportClient({
  apiKey: process.env.DOTPASSPORT_API_KEY
});

Environment Variables

React (Vite)

# .env
VITE_DOTPASSPORT_API_KEY=your_api_key

Next.js

Node.js Backend


Rate Limiting Protection

Protect your API key from abuse:


Input Validation

Always validate user input before making API calls:


CORS Configuration

If you're proxying API requests through your backend:


Content Security Policy

Add appropriate CSP headers:


Secure Widget Embedding

Iframe Sandboxing

If embedding widgets in iframes:

Subresource Integrity

When using CDN:


Data Privacy

Minimal Data Collection

Only request what you need:

Cache Sensitive Data Carefully


Error Message Handling

Don't expose internal errors to users:


Backend Proxy Pattern

For maximum security, proxy requests through your backend:


Security Checklist


Reporting Security Issues

If you discover a security vulnerability in the SDK:

  1. Do not disclose publicly

  2. Email security@dotpassport.io

  3. Include detailed reproduction steps

  4. Allow reasonable time for fix before disclosure


Last updated