Security Model
CASTOVIA কীভাবে আপনার operation, data, subscriber, এবং infrastructure সুরক্ষিত রাখে।
Platform Security
SaaS Control Plane: Castovia একটি managed SaaS। কোনো source code সরবরাহ করা হয় না। Self-hosting option নেই। Infrastructure Castovia দ্বারা পরিচালিত।
Tenant Isolation: প্রতিটি প্রোভাইডার যৌক্তিকভাবে বিচ্ছিন্ন tenant-এ কাজ করে। প্রোভাইডাররা অন্য প্রোভাইডারের data, subscriber, stream, বা configuration অ্যাক্সেস করতে পারে না।
RBAC (Role-Based Access Control): চারটি role: super_admin, admin (provider), supplier, viewer। প্রতিটি role-এর permission অত্যন্ত সীমাবদ্ধ।
Plan Enforcement: API-level soft + hard enforcement সহ 7-tier plan model। গুরুত্বপূর্ণ commercial route-এ hard enforcement সক্রিয়।
Authentication ও Access
Password Security: Password bcrypt দিয়ে hash করা হয়। Admin/supplier account-এর জন্য plaintext storage নেই।
Node Authentication: Provider node গুলো scoped, per-node server token দিয়ে authenticate করে, যা admin dashboard থেকে স্বাধীনভাবে rotate করা যায়।
Rate Limiting: Login, signup, contact form, এবং API endpoint-এ প্রতি IP অনুযায়ী rate limit আছে, brute-force attack প্রতিরোধের জন্য।
Session Management: 24-hour expiration সহ JWT-based session।
Suspicious Activity Detection: সন্দেহজনক login pattern-এর স্বয়ংক্রিয় সনাক্তকরণ ও লগিং।
Data Protection
No sourceUrl Exposure: Internal stream source URL কখনও end-user device বা client-side code-এ প্রকাশ করা হয় না।
No storagePath Exposure: Internal storage path সার্ভার-সাইডেই থাকে।
Signed Playback URLs: Playback URL সময়সীমাবদ্ধ এবং cryptographically signed। মেয়াদোত্তীর্ণ URL প্রত্যাখ্যান করা হয়।
Signed Playback Metadata: End-user device শুধুমাত্র নিরাপদ metadata পায়। কোনো internal infrastructure detail নয়।
Audit Logs: জবাবদিহিতার জন্য administrative action লগ করা হয়।
CDN/DRM Credential Security
CDN API Keys: ডাটাবেসে এনক্রিপ্টেডভাবে সংরক্ষিত। API response-এ কখনও ফেরত দেওয়া হয় না। UI-তে redacted থাকে।
DRM Secrets: এনক্রিপ্টেডভাবে সংরক্ষিত। কখনও client device-এ প্রকাশ করা হয় না। application log-এ কোনো raw license secret নেই।
No Origin Secret Exposure: CDN origin secret end-user device-এ কখনও প্রকাশ করা হয় না।
Stripe ও Billing Security
Stripe Secret Key: শুধুমাত্র server-side। client-side code বা API response-এ কখনও প্রকাশ করা হয় না।
Webhook Signature Verification: সব Stripe webhook event প্রক্রিয়াকরণের আগে HMAC signature দিয়ে যাচাই করা হয়।
Idempotent Processing: Webhook event দ্বৈত প্রক্রিয়াকরণ রোধ করতে deduplicate করা হয়।
Publishable Key: client-side checkout flow-এ শুধুমাত্র publishable key (read-only) ব্যবহার করা হয়।
আইনগত অবস্থান ও অপব্যবহার প্রতিরোধ
No Content Provision: Castovia TV/video content সরবরাহ, host, বা বিতরণ করে না। প্রোভাইডারদের আইনগত content right-এর সম্পূর্ণ দায়িত্ব রয়েছে।
Abuse Reporting: সর্বজনীন abuse reporting mechanism। রিপোর্ট পর্যালোচনা করে ব্যবস্থা নেওয়া হয়।
Account Suspension: অবৈধভাবে কনটেন্ট বিতরণকারী অ্যাকাউন্ট স্থগিত করার অধিকার Castovia সংরক্ষণ করে।
Log Preservation: আইনগতভাবে compliance-এর প্রয়োজন হলে প্রাসঙ্গিক log সংরক্ষণ করা হতে পারে।
Acceptable Use Policy: সব প্রোভাইডারকে সম্মতি দিতে হবে। লঙ্ঘন করলে তাৎক্ষণিক স্থগিতাদেশ হতে পারে।