نموذج الأمان، بالتفصيل.
بُني TelegramOS حول عزل المستأجرين، والحد الأدنى من الامتيازات، والدفاع المتعمّق. هذه الصفحة هي المرجع الرسمي لكيفية حماية المنصة للمشغّلين وبياناتهم.
آخر تحديث: 2026-09-29
عزل المستأجرين
كل استعلام مرتبط بمستأجر؛ والوصول عبر المستأجرين مستحيل هيكليًا.
التشفير أثناء التخزين
تُشفَّر بيانات جلسات Telegram أثناء التخزين بواسطة Fernet (AES) بمفتاح المنصة. محتوى الرسائل والملفات غير مشفّرة من جانب التطبيق.
مصادقة قوية
مصادقة ثنائية (TOTP بالإضافة إلى رموز احتياطية) لكل مشغّل. تجزئة كلمات المرور بـ bcrypt.
حراسات الصلاحية
فحوصات رتبة الدور على كل نقطة نهاية لتعديل الأعضاء.
تسجيل التدقيق
سجلات للإضافة فقط للإجراءات المميزة، مع عنوان IP ووكيل المستخدم.
بنية تحتية مملّة
Postgres وRedis وNATS وFastAPI وNext.js. مُشغّلة، وليست مرتجلة.
البنية
المنصة عبارة عن مجموعة من خدمات FastAPI تتواصل عبر شبكة داخلية، مدعومة بـ PostgreSQL وRedis وNATS. لوحة Next.js مستهلِك صارم لنفس واجهات API التي قد يستدعيها مشغّل خارجي. لا يوجد أي مسار لوحة تحكم ذي صلاحية يتجاوز التفويض.
الشبكة
- جميع النقاط النهائية العامة تعمل عبر TLS فقط. تم تفعيل HSTS.
- تعمل حركة المرور الداخلية بين الخدمات عبر شبكة خاصة؛ ويُفرض التحقّق من هوية الخدمة.
- يستخدم تسليم الـ Webhook حمولات موقّعة بسر خاص لكل مساحة عمل.
عزل المستأجرين
الفصل بين المستأجرين ثابت جوهري. كل طلب مُصادَق عليه مرتبط بمعرّف مستأجر مشتق من رمز الوصول. تفرض طبقة البيانات نطاق المستأجر عند مُنشئ الاستعلامات؛ لا يمكن لنقاط النهاية القراءة عبر المستأجرين بالخطأ لأن الـ API لجلب أي شيء يتطلّب شرط مستأجر.
- تُحدَّد نطاقات استعلامات قاعدة البيانات عبر جلسة SQLAlchemy مرتبطة بمستأجر الطلب.
- ترث المهام الخلفية مستأجر الطلب الأصلي.
- تُحسَب تجميعات التحليلات لكل مستأجر؛ وقد سُدّ التسرب عبر المستأجرين الذي اكتُشِف في تدقيقنا الثاني في الإصدار v0.6.0 (انظر سجل التغييرات).
المصادقة
- تُجزّأ كلمات مرور الحسابات باستخدام bcrypt (معامل تكلفة 12) مع ملح خاص بكل كلمة مرور. يُستخدم Argon2id فقط لاشتقاق المفتاح من عبارة مرور خزنة الجلسات الاختيارية.
- المصادقة الثنائية عبر TOTP (Google Authenticator و Authy و 1Password). تُصدَر رموز احتياطية عند التسجيل ويجب على المشغّل تخزينها.
- رموز الجلسة هي رموز JWT قصيرة الأمد مقترنة برموز تحديث دوّارة؛ ويُبطِل تدوير التحديث الرمز السابق.
- مفاتيح API مجزّأة (hashed) أثناء التخزين وتُعرض للمشغّل مرة واحدة بالضبط عند الإنشاء.
التفويض والفرق
التفويض مبني على الأدوار مع تجاوزات لكل عضو. الأدوار الأربعة (owner, admin, operator, viewer) مصنّفة، وكل نقطة نهاية تعدّل العضوية تفرض القاعدة: يجوز للفاعل غير المالك أن يسند أدوارًا أدنى من دوره بشكل صارم فقط، ولا يجوز له تعديل عضو في رتبته أو أعلى منها.
- يظهر حارس رتبة الدور على كل من
POST /teams/{id}/membersوPATCH /teams/{id}/members/{user}. كان التماثل هو الخلل الذي أصلحه تدقيق الإصدار v0.4.0. - لا يمكن إزالة المالك عبر نقطة نهاية الإزالة؛ يجب نقل الملكية أولاً.
- لا يمكن لتجاوزات الأذونات لكل عضو منح قدرة أعلى من رتبة الفاعل نفسه.
التشفير
- أثناء النقل: TLS 1.2 أو أحدث في كل مكان. تقدّم نقاط النهاية العامة تكوين TLS صارمًا؛ إصدارات البروتوكول القديمة معطّلة.
- أثناء التخزين: تُشفَّر جلسات تيليجرام وكلمات مرور التحقق بخطوتين أثناء التخزين بواسطة Fernet (AES). المفتاح الأساسي سرٌّ للخدمة يُحفَظ في بيئة التشغيل. وللحسابات التي تملكها، يشتقّ وضع الخزنة الاختياري المفتاح بواسطة Argon2id من عبارة مرور تحتفظ بها وحدك — وفي وضع الخزنة تكون الجلسة غير قابلة للقراءة أثناء التخزين بدونها. نصوص الرسائل وجهات الاتصال والمرفقات غير مشفّرة أثناء التخزين من جانب التطبيق ولا تخضع لتشفير من طرف إلى طرف.
- تدوير المفاتيح: يمكن تدوير المفاتيح الخاصة بكل مستأجر دون إعادة تشفير كل سجل، عبر إعادة تغليفها بالمفتاح الجديد.
تسجيل التدقيق
يُسجَّل كل إجراء مميز في سجل التدقيق. تتضمن الإدخالات الفاعل وفعل الإجراء ونوع المورد ومعرّفه وبيانات وصفية منظّمة (القيم القديمة والجديدة) وعنوان IP ووكيل المستخدم والطابع الزمني (بالتوقيت العالمي المنسّق UTC). السجلات للإضافة فقط في طبقة التخزين.
- دعوات الأعضاء، وتغييرات الأدوار، وعمليات الإزالة.
- إنشاء مساحة العمل وحذفها ونقل ملكيتها.
- عمليات تشغيل الأتمتة الحسّاسة.
- إنشاء مفتاح API وإلغاؤه.
- التغييرات المؤثرة على الفوترة.
الأمن التشغيلي
- الوصول إلى الإنتاج محصور في مجموعة صغيرة تستخدم مصادقة ثنائية مدعومة بالعتاد. جميع عمليات الوصول قابلة للتدقيق.
- لا يمكن لأي موظف قراءة أسرار المستأجرين بنص واضح؛ الوصول إلى مفتاح كل مستأجر محدّد النطاق ومُسجَّل.
- النسخ الاحتياطية لقاعدة البيانات هي نسخ يومية تُحفظ 7 أيام ونسخ للاستعادة إلى نقطة زمنية تُحفظ حتى 3 أيام. وهي غير مشفّرة ومخزّنة على المضيف نفسه الذي يستضيف قاعدة البيانات، ولا توجد نسخة خارج هذا المضيف.
- تُوسَم الإصدارات وتُوقَّع؛ ويدعم مسار الطرح التراجع الفوري.
- تُفحص التبعيات باستمرار؛ وتُرقّع التحذيرات عالية الخطورة خلال 7 أيام، والحرجة خلال 24 ساعة.
معالجة إساءة الاستخدام
تُجري المنصة تقييمًا لخطر الحظر على نشاط الأتمتة وترفض إرسال المهام التي تبدو كرسائل مزعجة. تُوجَّه بلاغات الإساءة من أطراف ثالثة عبر فريق الثقة والسلامة؛ نتعاون مع الطلبات القانونية لكن ليس مع الضغوط غير الرسمية للإفصاح.
الاستجابة للحوادث
- يتم استدعاء مهندس مناوب لأي حادث يؤثر على المستخدمين.
- نسعى إلى نشر تقرير ما بعد الحادثة على المدوّنة لأي حادثة تؤثر في أكثر من مستأجر واحد.
- تُعامَل الحوادث الأمنية على أنها من الأولوية P1 بغضّ النظر عن تأثيرها على العملاء.
الإفصاح المسؤول
الإبلاغ عبر الدعم داخل التطبيق
نؤكد استلام البلاغات خلال 24 ساعة ونهدف إلى معالجة المشكلات عالية الخطورة المؤكّدة خلال 14 يوماً. لا نلاحق الباحثين حسني النية العاملين ضمن النطاق.
النطاق: الخدمة على telegramos.net وواجهات API العامة الخاصة بها.
خارج النطاق: الهندسة الاجتماعية للموظفين، وحجب الخدمة، والنتائج على خدمات الطرف الثالث التي نعتمد عليها (أبلغ عنها للطرف الثالث).
الامتثال والاستبيانات
نوقّع اتفاقيات معالجة البيانات (DPAs) ونكمل استبيانات أمان معقولة بموجب اتفاقية عدم إفشاء (NDA). راجع ملحق معالجة البيانات. للاستعداد لـ SOC 2، ومراجعات الموردين، وطلبات الاستبيانات، تواصل مع صفحة الاتصال.
الضمانات
عزل المستأجرين
مفروض على طبقة الاستعلام، ومُتحقَّق منه باختبارات في كل طلب دمج.
التشفير أثناء التخزين
مفاتيح Fernet (AES) خاصة بكل حساب؛ مع خزنة اختيارية بعبارة مرور فقط للحسابات التي تملكها.
حراسات رتبة الأدوار
لا يمكن لأي طرف أن يرتقي فوق رتبته الخاصة، في أي واجهة برمجية.
تدقيق للإضافة فقط
تُسجَّل الإجراءات ذات الامتيازات مع عنوان IP ووكيل المستخدم، ويُحتفظ بها طوال مدة بقاء مساحة العمل.
مصادقة ثنائية لكل مشغّل
TOTP مع رموز احتياطية؛ تتطلّب إعادة تعيين كلمة المرور كلا العاملين.
إصدارات موقّعة
كل وسم إصدار موقّع؛ والتراجع بأمر واحد.
ملاحظة حول الكمال
لا توجد منصة غير قابلة للاختراق. التزامنا هو أننا نُهندس للعزل بحكم التصميم، وأننا ندقّق في عملنا الخاص، وأنه عندما يحدث خطأ ما فإننا نخبرك به. الـ سجل التغييرات يضع علامة على كل تغيير متعلّق بالأمان حتى تتمكن من تدقيق عملنا عبر الزمن.