Skip to navigation

Agent SDK الأسرار وHMAC التوقيع

حماية بيانات اعتماد الوكيل API وفهم كيفية قيام SDK بإنشاء توقيعات طلب ذات طابع زمني ومقاومة لإعادة التشغيل HMAC -SHA256.

View as Markdown

تتم مصادقة طلبات Agent SDK باستخدام سر الشريك API. احتفظ بهذا السر داخل خدمة خلفية موثوقة ودع SDK يقوم بإنشاء حقول التوقيع كلما أمكن ذلك.

اثنين من بروتوكولات التوقيع

يستخدم توقيع Agent SDK حقول الطلب المصنفة، والطابع الزمني المستند إلى الثواني، والرقم nonce. تستخدم الطلبات المباشرة Developer API العملية المنفصلة الموضحة في توقيع الطلب. لا تقم بإعادة استخدام تنسيق حمولة واحد للآخر.

قاعدة التوقيع

بالنسبة لطلبات Agent SDK:

  1. استبعاد الحقل sign.
  2. حذف الحقول ذات القيم الفارغة.
  3. قم بفرز أسماء الحقول المتبقية بالترتيب ASCII.
  4. انضم إلى الحقول باسم k=v&k2=v2.
  5. احسب التوقيع السداسي العشري HMAC-SHA256 باستخدام apiSecret.

يتم تسلسل قيم المصفوفة على أنها مضغوطة JSON قبل الانضمام إلى حمولة التوقيع. على سبيل المثال، يشير platformUserIds إلى ["1188041528"]، مما يؤدي إلى ظهور platformUserIds=["1188041528"] في الحمولة النافعة k=v. الحفاظ على ترتيب عناصر المصفوفة وعلامات الاقتباس المزدوجة ومعرفات السلسلة؛ لا تقم بإدخال مسافات التنسيق أو استخدام Java List.toString() (مثل [1188041528]). يعالج SDK هذا التسلسل تلقائيًا.

يجب أن يبني SDK هذه القيمة من نفس البيانات التي يرسلها. يؤدي تغيير الحقل المُوقع بعد إنشاء التوقيع إلى فشل عملية التحقق.

SDK - الحقول المُدارة

مجالمصدروصف
agentCodeSDK التكوينرمز الوكيل الشريك.
الطابع الزمنيوقت الخادم الحاليالطابع الزمني لنظام Unix بالثواني.
nonceتأمين قيمة عشوائيةإعادة تشغيل سلسلة عشوائية الحماية.
لافتةHMAC-SHA256طلب التوقيع.
عملةالعملة الافتراضيةيستخدم عند التحويل/الحساب APIs لحذف العملة.

تخزين سري

  • قم بتحميل apiSecret من مدير سري للواجهة الخلفية أو من تكوين وقت التشغيل المحمي.
  • لا تضع السر أبدًا في حزم الواجهة الأمامية أو تطبيقات الهاتف المحمول أو عملاء سطح المكتب أو لقطات الشاشة أو تذاكر الدعم.
  • احتفظ ببيانات الاعتماد الخاصة بالتطوير والتشغيل والإنتاج منفصلة.
  • تقييد الوصول إلى الخدمات والمشغلين الذين يحتاجون إليها.
  • قم بتنقيح توقيعات الطلب وقيم التفويض والأسرار من السجلات.
  • قم بإلغاء واستبدال بيانات الاعتماد عند الاشتباه في التعرض.

حماية الساعة وإعادة التشغيل

يتضمن SDK timestamp وnonce لتقليل مخاطر إعادة التشغيل. حافظ على مزامنة الساعات الخلفية ولا تعيد استخدام الساعة التي تم إنشاؤها يدويًا. إذا فشل التحقق من صحة التوقيع، فتأكد من السر الذي تم تكوينه ووقت الخادم والحقول المتسلسلة والبيئة قبل إعادة المحاولة.

قائمة التحقق من التكامل

يفحصالنتيجة المتوقعة
الموقع السريالتخزين السري للواجهة الخلفية فقط.
بيئةتنتمي القاعدة URL وبيانات الاعتماد إلى نفس البيئة.
التعامل الميدانيSDK يُنشئ timestamp، nonce، و sign.
التسجيلتظل معرفات الأعمال مرئية أثناء تنقيح بيانات الاعتماد.
تناوبيتم توثيق مالك بيانات الاعتماد وعملية الاستبدال.

وثائق الأمن ذات الصلة