أضف تسجيل الدخول عبر Posty5 إلى موقعك أو تطبيقك

اسمح للمستخدمين بتسجيل الدخول إلى موقعك بحساب Posty5 كما يفعلون مع Google - OpenID Connect وشاشة موافقة وحزم جاهزة لـ Node.js وAngular.

ADإعلان
أضف تسجيل الدخول عبر Posty5 إلى موقعك أو تطبيقك

كل نموذج تسجيل جديد يطلب من الناس كلمة مرور أخرى، وكل كلمة مرور تخزّنها عبء إضافي عليك حمايته. يتيح تسجيل الدخول عبر Posty5 للمستخدمين الدخول إلى موقعك أو تطبيقك بحساب Posty5 الذي يملكونه بالفعل، تمامًا كما يختارون تسجيل الدخول عبر Google.

يشرح هذا المقال ما يراه مستخدموك، وما تحصل عليه كمطور، والخطوات الأربع لإضافته. وهو جزء من منصة المطورين في Posty5 الموضّحة في دليل مفاتيح API وحزم SDK.

ما هو تسجيل الدخول عبر Posty5

أصبح Posty5 مزوّدًا لـ OAuth 2.0 وOpenID Connect. تسجّل تطبيقك في Posty5 Studio، وترسل المستخدمين إلى Posty5 لتسجيل الدخول، ثم تستلم رمز هوية موقّعًا يخبر خادمك بهويتهم. ولا يرى موقعك كلمة مرورهم في Posty5 أبدًا.

ولأنه يتبع المعيار، فهو يعمل مع حزم Posty5 لـ Node.js وAngular ومع أي مكتبة OpenID Connect معتمدة - ASP.NET Core أو Python أو PHP أو Java. ولا يستهلك تسجيل التطبيقات وتسجيل دخول المستخدمين أي رصيد، في كل الخطط.

ما يراه مستخدموك

  • زر تسجيل الدخول عبر Posty5 أو المتابعة باستخدام Posty5 في صفحة تسجيل الدخول لديك.
  • صفحة تسجيل الدخول الخاصة بـ Posty5 إذا لم يكونوا مسجّلين بعد - وتُكتب كلمة المرور في posty5.com فقط.
  • شاشة موافقة تعرض اسم تطبيقك وشعاره وموقعه وسياسة الخصوصية والشروط، وسطرًا لكل معلومة تطلبها، مع زرَّي السماح وإلغاء.
  • يُحفظ اختيارهم فيمر تسجيل الدخول التالي مباشرة. ويمكنهم إزالة وصول تطبيقك في أي وقت من الحساب ثم التطبيقات المتصلة.

الشرح الكامل من جهة المستخدم موجود في ما هو تسجيل الدخول عبر Posty5، وهل بياناتي آمنة؟، ويمكنك ربطه من صفحة تسجيل الدخول لديك.

ما تحصل عليه كمطور

  • OpenID Connect قياسي - تدفق رمز التفويض مع PKCE إلزامي في كل تسجيل دخول، ومستند اكتشاف تضبط معظم المكتبات نفسها منه.
  • رموز هوية موقّعة (RS256) تحتوي على اسم المستخدم وصورته وبريده الإلكتروني وحالة توثيقه - للنطاقات التي سمح بها المستخدم فقط.
  • معرّف مستخدم خاص بتطبيقك. فالقيمة sub ثابتة لتطبيقك ومختلفة في تطبيقات المطورين الآخرين، فلا تستطيع التطبيقات مطابقة المستخدمين فيما بينها.
  • حزمة @posty5/oauth لخوادم Node.js، مع روابط تسجيل دخول موقّعة لا تحتاج إلى تخزين الجلسة، وحزمة @posty5/oauth-angular التي توفّر زر المتابعة باستخدام Posty5 القابل للتخصيص في Angular.
  • تسجيل الدخول من المتصفح للتطبيقات التي تعمل في الواجهة الأمامية فقط - يُفعَّل لكل تطبيق، ولا يُقبل إلا من مصادر المواقع التي تُدرجها.
  • تبويب للمستخدمين لكل تطبيق في Posty5 Studio، ومفتاح API مضاف إلى التطبيق يقرأ القائمة نفسها من خادمك.

أضفه في أربع خطوات

  1. في Posty5 Studio، افتح أدوات المطورين ثم تطبيقات OAuth، واختر تسجيل تطبيق. أدخل الاسم والشعار والروابط التي سيراها المستخدمون، وعنوان رد الاستدعاء كرابط إعادة توجيه.
  2. انسخ معرّف العميل والمفتاح السري إلى إعدادات خادمك. لا يظهر المفتاح السري إلا مرة واحدة، ويمكنك تجديده لاحقًا.
  3. ثبّت @posty5/oauth وأضف مسارين - مسار ينشئ رابط تسجيل الدخول ويرسل المستخدم إلى Posty5، ومسار رد الاستدعاء الذي يتحقّق من النتيجة.
  4. ضع زر تسجيل الدخول عبر Posty5 في صفحة تسجيل الدخول، وسجّل الدخول بنفسك مرة، واربط سجلات المستخدمين لديك بقيمة sub التي تستلمها.
const link = await posty5.createLoginLink({ returnTo: "/account" });
res.cookie("p5_binding", link.binding, { httpOnly: true, secure: true, sameSite: "lax" });
res.redirect(link.url);

// on your redirect URI
const { claims, returnTo } = await posty5.handleLoginCallback(req.query, { binding: req.cookies.p5_binding });

يحمل رابط تسجيل الدخول أداة التحقق الخاصة بـ PKCE وقيمة nonce وعنوان العودة داخل قيمة state مختومة، فلا يحتفظ خادمك بأي شيء بين الطلبين، ويربط ملف تعريف ارتباط الرابط بالمتصفح الذي طلبه.

سجّل أول تطبيق OAuth لك

أنشئ التطبيق في Posty5 Studio، وانسخ بيانات اعتماده، وجرّب تسجيل الدخول في موقعك.

اختر طريقة الدمج

  • موقع بخادم خلفي Node.js - استخدم @posty5/oauth. ويبقى المفتاح السري على خادمك.
  • تطبيق Angular - استخدم الزر من @posty5/oauth-angular ودع خادمك الخلفي ينفّذ تسجيل الدخول. راجع كيفية إضافة زر المتابعة باستخدام Posty5 في Angular.
  • تطبيق ثابت دون خادم خلفي - فعّل تسجيل الدخول من المتصفح للتطبيق، وأدرج مصادر موقعك، واستخدم وضع browser في حزمة Angular أو أي عميل OpenID Connect يدعم PKCE.
  • أي لغة أخرى - وجّه مكتبة OpenID Connect لديك إلى https://api.posty5.com مع معرّف العميل والمفتاح السري.

حدود يجب معرفتها قبل البدء

  • لا توجد رموز تحديث. يستمر رمز الوصول ساعة واحدة، لذا احتفظ بجلستك الخاصة بعد تسجيل الدخول.
  • تسجيل الدخول الصامت (prompt=none) غير متاح. ويمكنك فرض تسجيل دخول جديد باستخدام prompt=login أو max_age.
  • يشارك تسجيل الدخول عبر Posty5 الهوية فقط - الاسم والصورة والبريد الإلكتروني. ولا يمنح تطبيقك أي وصول إلى محتوى المستخدم في Posty5.
  • يمكن للحساب تسجيل حتى 20 تطبيق OAuth، ولكل تطبيق حتى 10 روابط إعادة توجيه دقيقة.

الأسئلة الشائعة

هل يستهلك تسجيل الدخول عبر Posty5 رصيدًا؟

لا. لا يستهلك تسجيل تطبيقات OAuth وتسجيل دخول المستخدمين أي رصيد، في كل الخطط.

ما البيانات التي يمكن لتطبيقي استلامها؟

ما يسمح به المستخدم فقط: معرّف مستخدم خاص بتطبيقك دائمًا، والاسم وصورة الملف الشخصي مع نطاق profile، والبريد الإلكتروني وحالة توثيقه مع نطاق email.

هل يمكنني استخدامه دون خادم خلفي؟

نعم. فعّل تسجيل الدخول من المتصفح للتطبيق وأدرج مصادر موقعك. عندها يستبدل المتصفح الرمز باستخدام PKCE ودون مفتاح سري. وإذا كان لديك خادم خلفي، فهو المكان الأفضل لتسجيل الدخول.

لماذا يختلف معرّف المستخدم في تطبيقي الآخر؟

القيمة sub خاصة بكل تطبيق: فهي تعتمد على نطاق أول رابط إعادة توجيه في كل تطبيق، لذا لا تستطيع تطبيقات المطورين المختلفين مطابقة المستخدمين. وتحصل التطبيقات المسجّلة بالنطاق نفسه على القيمة نفسها.

هل يمكنني معرفة من سجّل الدخول إلى تطبيقي؟

نعم. لكل تطبيق تبويب للمستخدمين في Posty5 Studio، ويقرأ مفتاح API المضاف إلى التطبيق القائمة نفسها من خادمك، مع ما شاركه كل مستخدم فقط.

ماذا يحدث عندما يزيل المستخدم الوصول؟

تتوقف رموز الوصول الخاصة بهذا المستخدم عن العمل، ويختفي من قائمة المستخدمين لديك، ويعرض تسجيل دخوله التالي شاشة الموافقة مجددًا. ولا يتأثر حسابه في موقعك.

ADإعلان