رمز JSON المميّز للويب (JWT) هو معيار ويب مفتوح يُستخدم للمصادقة. والسماح بتبادل المعلومات بين العميل والخادم. عند تثبيت تطبيق يقوم المستخدم بتسجيل الدخول أولاً باستخدام بيانات اعتماد الدور المناسبة، ينشئ الخادم ويعرض رمز JWT مشفّرًا وموقّعًا رقميًا لاستخدامه مع الطلبات اللاحقة. وتعمل هذه العملية على مصادقة المستخدم والسماح له بالوصول إلى المسارات، والخدمات والموارد حسب دورهم في حساباتهم.
بالنسبة إلى طلبات بيانات طريقة واجهة برمجة التطبيقات من البيئات المنخفضة الثقة، يتطلب Fleet Engine استخدام رموز JSON المميّزة للويب (JWT) الموقَّعة من خلال حساب خدمة مناسب. وتشمل البيئات منخفضة الثقة الهواتف الذكية والمتصفحات. JWT على الخادم الخاص بك، والتي تُعد بيئة موثوقة بالكامل. يتم توقيع ملف JWT وتشفيره ونقله إلى العميل للتفاعلات التالية مع الخادم إلى أن تنتهي صلاحيته أو يصبح غير صالح. بالنسبة إلى قائمة بأدوار حساب الخدمة، يُرجى الاطّلاع على أدوار حساب خدمةFleet Engine. في أساسيات Fleet Engine
في المقابل، يجب أن تتم المصادقة والتفويض ضد Fleet Engine في الخلفية. باستخدام بيانات الاعتماد التلقائية للتطبيق العادية والآليات الأخرى.
على عكس مفاتيح واجهة برمجة التطبيقات، تكون مفاتيح JWT قصيرة الأجل وتقصر العمليات على تلك التي المصرّح له بأدائه. لمزيد من المعلومات حول JWT، راجع JSON Web الرموز المميّزة على Wikipedia للحصول على تفاصيل عن أدوار الوصول، يُرجى الاطّلاع على الخدمة. أدوار الحساب في هذا الدليل.
عناصر JWT
تحتوي JWT على عنوان وقسم مطالبة. يحتوي قسم العنوان على مثل المفتاح الخاص الذي تم الحصول عليه من حسابات الخدمة وخوارزمية التشفير. يحتوي قسم المطالبة على معلومات مثل قانون JWT وتوفير الوقت، والوقت للعيش، والخدمات التي تطالب فيها JWT الوصول إلى معلومات التفويض الأخرى للوصول إلى النطاق حيث على سبيل المثال، معرّف مركبة التسليم.
يقدم الجدول التالي تفاصيل وصفية حول حقول JWT بشكل عام، إلى جانب معلومات محدّدة حول المكان الذي يمكنك فيه العثور على قيم هذه القيم الحقول في مشروع Fleet Engine Cloud.
الحقل |
الوصف |
---|---|
طحالب |
الخوارزمية المطلوب استخدامها. `RS256`. |
كتابة |
تمثّل هذه السمة نوع الرمز المميّز. "JWT". |
طفلة |
رقم تعريف المفتاح الخاص لحساب الخدمة. يمكنك العثور على هذه القيمة في
الحقل |
الحقل |
الوصف |
---|---|
هوس |
عنوان البريد الإلكتروني لحساب الخدمة، ويمكن العثور عليه في
الحقل |
sub |
عنوان البريد الإلكتروني لحساب الخدمة، ويمكن العثور عليه في
الحقل |
Aud |
حساب الخدمة |
iat |
الطابع الزمني لوقت إنشاء JWT، ويتم تحديده بالثواني
انقضى منذ 00:00:00 بتوقيت |
exp |
الطابع الزمني لانتهاء صلاحية JWT، الذي يتم تحديده بالثواني
منذ |
السماح |
حسب حالة الاستخدام، قد يحتوي على في حال تحديد taskids، يجب أن يكون نطاق التفويض مصفوفة في مربّع بالأشكال التالية: "taskids": ["task_id_one","task_id_two"]
أو "taskids": ["*"] |
مطالبات Fleet Engine JWT
يستخدم Fleet Engine المطالبات الخاصة. يضمن استخدام المطالبات الخاصة ويمكن للعملاء المصرح لهم الوصول إلى بياناتهم الخاصة.
على سبيل المثال، عندما يصدر الخادم رمز JSON المميّز للويب JSON لهاتف جوّال لبرنامج التشغيل
يجب أن يتضمّن الجهاز المطالبة "vehicleid
" أو
مطالبة واحدة (deliveryvehicleid
) بقيمة رقم تعريف المركبة الخاص بالسائق بعد ذلك، يُرجى اتّباع الخطوات التالية:
استنادًا إلى دور السائق، تتيح مفاتيح JWT الوصول للمركبة المحدّدة فقط.
مستند تعريف الهوية وليس أي رقم تعريف عشوائي آخر للمركبة
يستخدم Fleet Engine المطالبات الخاصة التالية:
رحلات عند الطلب
-
vehicleid
:- تستخدم حزمة تطوير البرامج (SDK) لبرنامج التشغيل دائمًا هذه المطالبة، سواء كانت تعمل في رحلة. أو المركبة. تؤكد الواجهة الخلفية لـ Fleet Engine أن المركبة المرتبطة بالرحلة المطلوبة قبل إجراء التعديل.
- يمكن أن يغطي JWT كلاً من المركبة والرحلة العمليات، حتى إذا لم تكن مطلوبة، مما قد يؤدي إلى تبسيط توقيع JWT التنفيذ.
-
tripid
:- دائمًا ما تستخدم حزمة تطوير البرامج (SDK) الخاصة بالمستهلك هذه المطالبة.
- ويمكن أن يغطي JWT عمليات المركبات والرحلات حتى إذا لم يكن ذلك مطلوبًا، ما قد يؤدي إلى تبسيط عملية توقيع الرمز المميّز التنفيذ.
المهام المُجدوَلة
-
deliveryvehicleid
الاستخدام عند طلب كل مركبة تسليم واجهات برمجة التطبيقات.
-
taskid
الاستخدام عند طلب واجهات برمجة التطبيقات لكل مهمة
-
taskids
استخدِم هذا الرمز عند الاتصال بالرقم التالي:
BatchCreateTasksAPI
. يجب أن تكون هذه المطالبة في شكل صفيف، ويجب أن يحتوي الصفيف على جميع أرقام تعريف المهام اللازمة لإكمال الطلب. لا تضمِّنdelivervehicleid
،trackingid
أوtaskid
مطالبة -
trackingid
استخدِم هذا الرمز عند الاتصال بالرقم
GetTaskTrackingInfoAPI
. يجب أن تتطابق المطالبة مع التتبّع. المعرّف في الطلب. لا تُدرِج مطالباتdelivervehicleid
أوtaskid
أوtaskids
.
الخطوات التالية
- يمكنك الاطّلاع على تصميم الأمان في Fleet Engine للتعرّف على الميزات مسار المصادقة
- تعرَّف على طريقة إصدار رموز JSON المميّزة للويب من خادمك.