يشرح هذا المستند كيفية تأمين Fleet Engine لتبادل المعلومات بين البيئات الثلاث الأساسية لنظام Fleet Engine: خادم الخلفية، وخادم Fleet Engine، وتطبيقات العميل والمواقع الإلكترونية.
تدير Fleet Engine الأمان بطريقتَين أساسيتَين، باستخدام مبدأ أقل امتياز:
بيانات الاعتماد التلقائية للتطبيق (ADC): للبيئات ذات الأذونات العالية مثل الاتصالات بين الخوادم. يُستخدَم هذا المفتاح عندما ينشئ خادم الخلفية المركبات والرحلات ويُديرها في Fleet Engine. للاطّلاع على التفاصيل، راجِع بيانات الاعتماد التلقائية للتطبيق.
رموز JSON المميّزة للويب (JWT): للبيئات ذات مستوى الثقة المنخفض، مثل التطبيقات العميلة التي تعمل على الهواتف الذكية والمتصفّحات. تُستخدَم لتنفيذ عمليات ذات امتيازات أقل، مثل تعديل الموقع الجغرافي للمركبة في Fleet Engine.
يتم إنشاء ملفات JWT المطلوبة للبيئات ذات مستوى الثقة المنخفض وإصدارها من قِبل خادم الخلفية لحماية مفاتيح الخدمة السرية، وتتضمّن مطالبات إضافية خاصة بخدمة Fleet Engine. لمعرفة التفاصيل، يُرجى الاطّلاع على رموزم الويب المميّزة بتنسيق JSON.
على سبيل المثال، إذا كان لديك تطبيق للسائقين، يمكن للسائقين الوصول إلى البيانات من Fleet Engine من خلال التطبيق. تتم مصادقة التطبيق باستخدام شهادات JWT التي يحصل عليها من خادم الخلفية. تحدِّد مطالبات JWT المضمّنة، بالإضافة إلى دور حساب الخدمة، أجزاء النظام التي يمكن لتطبيق السائق الوصول إليها وما يمكنه فعله. ويحدّ هذا النهج من الوصول إلى البيانات المطلوبة فقط لإكمال مهام القيادة.
يستخدم Fleet Engine أساليب الأمان هذه لتقديم ما يلي:
المصادقة: تُستخدَم هذه العملية للتحقّق من هوية الجهة التي تقدّم الطلب. يستخدم Fleet Engine بروتوكول ADC للبيئات العالية الثقة وJWT للبيئات المنخفضة الوثوق.
يحدِّد الترخيص الموارد التي يمكن للكيان الذي تمّت مصادقته الوصول إليها. يستخدم Fleet Engine حسابات الخدمة التي تتضمّن أدوار "إدارة الهوية وإمكانية الوصول" في Google Cloud، بالإضافة إلى إدعاءات JWT التي تضمن أنّ الكيانات التي تمّت مصادقتها لديها أذونات للاطّلاع على البيانات التي تطلبها أو تغييرها.
إعداد أمان الخادم والعميل
لتفعيل الأمان باستخدام Fleet Engine، عليك إعداد الحسابات المطلوبة والأمان على خادم الخلفية وعلى تطبيقات العميل وبمواقعه الإلكترونية.
يعرض الرسم البياني التالي نظرة عامة على خطوات إعداد الأمان على الخادم الخلفية وتطبيقات العميل.
لمعرفة مزيد من التفاصيل، يُرجى الاطّلاع على الأقسام التالية.
إعداد أمان الخادم في الخلفية
على مشرف أسطول السيارات اتّباع الخطوات التالية:
إنشاء حسابات الخدمة وضبطها:
في Google Cloud Console، أنشئ حسابات الخدمة.
اسنِد أدوارًا معيّنة في "إدارة الهوية وإمكانية الوصول" إلى حسابات الخدمة.
اضبط خادم الخلفية باستخدام حسابات الخدمة التي تم إنشاؤها. لمعرفة التفاصيل، يُرجى الاطّلاع على أدوار حسابات الخدمة.
ضبط الاتصالات الآمنة مع Fleet Engine (ADC): يمكنك ضبط الخلفية للتواصل مع مثيل Fleet Engine باستخدام ملف "سمات اعتماد التطبيق التلقائية" مع حساب الخدمة *المشرف المناسب. للاطّلاع على التفاصيل، راجِع بيانات الاعتماد التلقائية للتطبيق.
ضبط الاتصالات الآمنة مع تطبيقات العميل (JWT): أنشئ أداة إنشاء رموًز JSON المميّزة للويب من أجل إنشاء رموز JWT تتضمّن الطلبات المناسبة لتطبيقات العميل ومواقع الويب التي يتم مراقبتها. لمعرفة التفاصيل، يُرجى الاطّلاع على إصدار رموز JSON المميّزة للويب.
إعداد أمان التطبيق
على مطوّري التطبيقات تضمين طريقة لجلب الرموز المميّزة بتنسيق JSON التي ينشئها خادم الخلفية في تطبيقات العميل أو المواقع الإلكترونية، واستخدامها للتواصل بأمان مع Fleet Engine. لمعرفة التفاصيل، يُرجى الاطّلاع على تعليمات الإعداد في مستندات تجربة السائق أو تجربة المستهلك للتطبيقات التي تحتاج إليها.
مسار أمان تطبيق الخادم والعميل
يوضِّح المخطّط التسلسلي التالي مسار مصادقة تطبيق الخادم والعميل والتفويض باستخدام Fleet Engine باستخدام وحدة التحكّم في حدود الجلسة مع خادم الخلفية ورموز JWT مع تطبيقات العميل والمواقع الإلكترونية.
ينشئ خادم الخلفية المركبات والرحلات أو المهام في Fleet Engine.
يرسل خادم الخلفية رحلة أو مهمة إلى مركبة: يسترجع تطبيق السائق المهمة عندما يكون نشطًا.
خادم الخلفية: يوقّع ويُصدر ملف JWT لحساب الخدمة المعنيّ الذي يتضمّن دور إدارة الهوية وإمكانية الوصول (IAM) المناسب للمهمة أو الرحلة المحدّدة.
تطبيق العميل: يستخدم تطبيق العميل رمز JWT الذي تم استلامه لإرسال تعديلات الموقع الجغرافي للمركبة إلى Fleet Engine.
الخطوات التالية
- أنشئ مشروع Fleet Engine.
- تعرَّف على كيفية إصدار رموز الويب المميّزة بتنسيق JSON من خادمك.
- مزيد من المعلومات حول أدوار حسابات الخدمات
- JWTs