المصادقة المستندة إلى الرمز المميز (HTTP / 2) ل APNS

نظرة عامة

توضح هذه المقالة كيفية استخدام بروتوكول APNS HTTP/2 الجديد مع المصادقة المستندة إلى الرمز المميز.

وتشمل الفوائد الرئيسية لاستخدام البروتوكول الجديد ما يلي:

  • إنشاء الرمز المميز بسيط نسبيا (مقارنة بالشهادات)
  • لا مزيد من تواريخ انتهاء الصلاحية - أنت تتحكم في رموز المصادقة الخاصة بك وإبطالها
  • يمكن أن تصل الحمولات الصافية الآن إلى 4 كيلوبايت
  • ردود الفعل المتزامنة
  • أنت على أحدث بروتوكول من Apple - لا تزال الشهادات تستخدم البروتوكول الثنائي ، الذي تم وضع علامة عليه للإهمال

يمكن تنفيذ استخدام هذه الآلية الجديدة في خطوتين:

  • احصل على المعلومات اللازمة من مدخل حساب مطور Apple.
  • قم بتكوين مركز الإشعارات باستخدام المعلومات الجديدة.

تم الآن تعيين مراكز الإشعارات لاستخدام نظام المصادقة الجديد مع APNS.

لاحظ أنه إذا قمت بالترحيل من استخدام بيانات اعتماد الشهادة ل APNS، فإن خصائص الرمز المميز تحل محل شهادتك في نظامنا، ولكن يستمر تطبيقك في تلقي الإشعارات بسلاسة.

الحصول على معلومات المصادقة من Apple

لتمكين المصادقة المستندة إلى الرمز المميز، تحتاج إلى الخصائص التالية من حساب Apple Developer الخاص بك:

معرف المفتاح

يمكن الحصول على معرف المفتاح من صفحة المفاتيح ضمن الشهادات، ملفات تعريف المعرفات & ، في حساب مطور Apple الخاص بك:

Certificates

Identifiers

معرف التطبيق واسم التطبيق

يتوفر اسم التطبيق ومعرفه أيضا في صفحة الشهادات وملفات تعريف المعرفات & في حساب المطور:

Certificates and IDs

التكوين عبر .NET SDK أو مدخل Azure

يمكنك تكوين مركز التخصيص الخاص بك لاستخدام المصادقة المستندة إلى الرمز المميز باستخدام أحدث حزمة SDK للعميل أو في مدخل Azure. لتمكين المصادقة المستندة إلى الرمز المميز في البوابة الإلكترونية، سجل الدخول إلى مدخل Azure وانتقل إلى لوحة الإعدادات > Apple (APNS) في مركز الإشعارات. حدد الرمز المميز من خاصية وضع المصادقة لتحديث مركزك بجميع خصائص الرمز المميز ذات الصلة.

Configure token

  • أدخل الخصائص التي استرجعتها من حساب مطور Apple الخاص بك.
  • اختر وضع التطبيق (الإنتاج أو وضع الحماية).
  • انقر فوق الزر حفظ لتحديث بيانات اعتماد APNS.

تتكون بيانات الاعتماد المستندة إلى الرمز المميز من الحقول التالية:

  • معرف المفتاح: معرف المفتاح الخاص الذي تم إنشاؤه في بوابة مطوري Apple ؛ على سبيل المثال، 2USFGKSKLT.
  • معرف الفريق: يسمى أيضا "البادئة" أو "بادئة التطبيق". هذا هو معرف المؤسسة في بوابة مطوري Apple. على سبيل المثال، S4V3D7CHJR.
  • معرف الحزمة: ويسمى أيضا "معرف التطبيق". هذا هو معرف الحزمة للتطبيق. على سبيل المثال، com.example.myapp. لاحظ أنه يمكنك استخدام مفتاح واحد فقط لتطبيق واحد. يتم تعيين هذه القيمة إلى apns-topic رأس HTTP عند إرسال إعلام، ويتم استخدامها لاستهداف التطبيق المحدد. لا يمكنك تعيين قيمة apns-topic بشكل صريح.
  • الرمز المميز: ويسمى أيضا "المفتاح" أو "المفتاح الخاص". يتم الحصول على هذا من ملف .p8 الذي تم إنشاؤه على مدخل مطوري Apple. يجب تمكين APNS للمفتاح (والذي يتم تحديده على مدخل مطوري Apple عند إنشاء المفتاح). يجب أن تحتوي القيمة على رأس / تذييل PEM تم تجريده منه عند توفيره إلى بوابة NH / API.
  • نقطة النهاية: هذا تبديل في شفرة مدخل مراكز الإعلام، وحقل سلسلة في واجهة برمجة التطبيقات. القيم الصالحة هي https://api.development.push.apple.com:443/3/device أو https://api.sandbox.push.apple.com:443/3/device. تستخدم مراكز الإشعارات هذه القيمة إما لبيئة الإنتاج أو بيئة وضع الحماية، لإرسال الإشعارات. يجب أن يتطابق هذا مع الاستحقاق في التطبيق ، وإلا فإن الرموز المميزة لجهاز APNS التي تم إنشاؤها لا تتطابق مع البيئة ، وتفشل الإشعارات في الإرسال aps-environment .

فيما يلي نموذج تعليمات برمجية يوضح الاستخدام الصحيح:

NamespaceManager nm = NamespaceManager.CreateFromConnectionString(_endpoint);
string token = "YOUR PRIVATE KEY HERE";
string keyId = "YOUR KEY ID HERE";
string appName = "YOUR APP NAME HERE";
string appId = "YOUR APP ID HERE";
NotificationHubDescription desc = new NotificationHubDescription("PATH TO YOUR HUB");
desc.ApnsCredential = new ApnsCredential(token, keyId, appId, appName);
desc.ApnsCredential.Endpoint = @"https://api.development.push.apple.com:443/3/device";
nm.UpdateNotificationHubAsync(desc);

الخطوات التالية