يوفر هذا المستند معلومات حول كلمات السر والمصادقة وتكوين SSL والفصل بين الشبكات والاتصالات المشفّرة وعناوين HTTP وبروتوكول TLS لخادم الويب فيما يتعلق بعميل API الخاصة بواتساب للأعمال.
يُرجى الرجوع إلى وثائق تسجيل الدخول والمصادقة لمزيد من المعلومات حول رموز المصادقة وأفضل الممارسات بشأن كلمات السر.
يتطلب الوصول إلى عميل API الخاصة بواتساب للأعمال وجود بروتوكول HTTPS.
ينشئ عميل API الخاصة بواتساب للأعمال شهادة موقعة ذاتيًا بشكل افتراضي عند الإنشاء. قد تكون الشهادة الصادرة عن هيئة الشهادات (CA) المستخدمة لإنشاء الشهادة الموقعة ذاتيًا مطلوبة للتحقق من نقطة نهاية عميل API الخاصة بواتساب للأعمال وتجنب تحذير الثقة في الشهادة. وبدلاً من ذلك، يمكنك تحميل شهادة CA كبديل للشهادة الموقعة ذاتيًا. راجع وثائق شهادات CA لمزيد من المعلومات.
وبما أن أحداث Webhooks تتطلب أيضًا وجود بروتوكول HTTPS للاستدعاءات، يمكنك استخدام شهادات CA الخاصة لتجنب مواجهة التطبيق لأخطاء SSL عند محاولة إرسال طلب POST
لحدث Webhook الذي تم تكوينه. راجع وثائق شهادة CA أحداث Webhooks لمزيد من المعلومات.
يوصى باستضافة العقدتين Webapp وCoreapp في شبكات منفصلة، وعرضهما فقط للخدمات المطلوبة.
ينبغي ألا تعرض عقدة Webapp نقاط النهاية لواجهة API وإدارة الويب إلا للشبكات التي تستضيف عملاء API الخاصة بواتساب للأعمال ومحطات عمل أفراد الإدارة.
ينبغي ألا تعرض عُقد Coreapp إلا خدمة الاتصال لعُقد Webapp، وفي إعداد الاتصال المتعدد، لا تعرض سوى خدمة التحكم لعُقد Coreapp الأخرى.
نوصي بتعيين متغير البيئة WA_SECRET
في الحاويتين Coreapp وWebapp لضمان تشفير الاتصالات بينهما.
ملاحظة: سيحتاج مضيفا Coreapp وWebapp إلى مزامنة ساعتهما حتى يعمل التشفير بشكل جيد. في حالة وجود انحرافات زمنية، قد تؤدي حماية إعادة التشغيل (مثل التحقق من الطابع الزمني خلال فترة سماح تصل إلى 10 ثوانٍ) إلى فشل الاتصال.
يمكنك تكوين معلمات SSL المُستخدمة في تشفير اتصال قاعدة البيانات لحماية البيانات الموجودة قيد النقل.
فيما سبق، لم يكن التشفير باستخدام متغير البيئة WA_DB_CONNECTION_OPTION
ممكنًا إلا لاتصال Coreapp بقاعدة البيانات نظرًا لأنه جرت العادة بأنه يمكن فقط لحاوية Coreapp الوصول إلى قاعدة البيانات. مع ذلك، يمكن لحاوية Webapp أيضًا الوصول إلى قاعدة البيانات، وبالتالي من المهم تشفير اتصال Webapp بقاعدة البيانات. لذلك، يتم تغيير تكوين SSL لجعلها حيادية لجميع الحاويات من أجل إمكانية الوصول. يمكن تكوين التشفير باستخدام المتغيرات البيئية التالية:
WA_DB_SSL_KEY
WA_DB_SSL_CERT
WA_DB_SSL_CA
WA_DB_SSL_VERIFY
يمكن تكوين WA_DB_SSL_VERIFY
للتحقق من صحة هوية الخادم. يلزم إجراء ذلك في بعض عمليات إعداد التطوير الداخلي ويوصى بشدة بعدم تعطيل عملية التحقق من الصحة. إذا لم يتم تعيين هذه المعلمة، فسيتم تشغيل التحقق من الصحة افتراضيًا. لتعطيل عملية التحقق من الصحة، استخدم ما يلي:
WA_DB_SSL_VERIFY=0
ملاحظة: لا ينطبق WA_DB_SSL_VERIFY
إلا على Webapp.
بالنسبة للتوافق مع الإصدارات السابقة، سيستمر دعم WA_DB_CONNECTION_OPTION
في وضع إيقاف الاستخدام ويُستخدم لتشفير اتصال حاوية Coreapp بقاعدة البيانات. نوصيك بشدة بالتحول إلى استخدام هذه المعلمات الجديدة.
يجب إتاحة الوصول إلى جميع الحقول التي تم تكوينها في متغيرات البيئة Key وCert وCA داخل الحاوية. لتنفيذ ذلك، يمكنك إنشاء دليل certs
ضمن وحدة تخزين البيانات باستخدام الأذونات الملائمة. يتم عادة إدخال وحدة تخزين البيانات في صورة /usr/local/waent/data
وعندئذ يمكن الوصول إلى دليل الشهادات في /usr/local/waent/data/certs
داخل الحاوية.
تم تكوين بروتوكول TLS وعمليات التشفير حسب التكوينات الموصى بها من جانب Mozilla. يدعم Webapp ثلاثة ملفات شخصية وهم: MODERN (افتراضي) وINTERMEDIATE وOLD.
نوصيك بالإبقاء على التكوين الافتراضي لتحسين الأمان. ومع ذلك، يمكنك اختيار إرجاع ملفك الشخصي إلى إصدار أقدم باستخدام متغير البيئة WA_WEB_SECURITY_LEVEL
.
تكون عناوين HTTP التالية مدعومة لمسؤول الويب، ولكن ليس لنقاط النهاية في API وتخضع للمتصفح الموجود قيد الاستخدام.
الاسم | الوصف |
---|---|
| يحدد السياسة التي تسمح فقط بتشغيل البرامج النصية من النطاق ذاته على مسؤول الويب |
| لا يسمح العنوان لأي نطاق بتضمين صفحة مسؤول الويب بتنسيق iframe |
| عنوان الحماية الذي يجعل صفحة مسؤول الويب آمنة من هجمات البرامج النصية عبر المواقع عن طريق فلترة الإدخالات في حالة اكتشاف أي هجمات |
| يضمن أن نوع المحتوى الذي استلمه الخادم يطابق نوع المحتوى المطلوب من جانب الخادم |
| يضمن عدم الوصول إلى مسؤول الويب إلا عبر بروتوكول HTTPS |