[go: up one dir, main page]

العربية
  • GitHub
  • خزنة الأسرار
  • تخزين الرموز
  • OAuth
  • تسجيل دخول اجتماعي

تطبيقات GitHub مقابل تطبيقات OAuth: اختر الاتصال المناسب بـ GitHub

قارن بين تطبيقات GitHub وتطبيقات OAuth لتكامل Logto. تعرّف على الفروقات الأساسية في الأمان، الصلاحيات، إدارة الرموز، واختر طريقة المصادقة المناسبة بـ GitHub لتطبيقك.

Ran
Ran
Product & Design

توقف عن إضاعة أسابيع في مصادقة المستخدم
أطلق تطبيقات آمنة بشكل أسرع مع Logto. قم بدمج مصادقة المستخدم في دقائق وركز على منتجك الأساسي.
ابدأ الآن
Product screenshot

عند دمج مصادقة GitHub في تطبيق Logto الخاص بك، لديك خياران: تطبيقات GitHub وتطبيقات GitHub OAuth. بينما يتيح كلاهما وظيفة "تسجيل الدخول بواسطة GitHub"، إلا أنهما يقدمان تجربتين مختلفتين بشكل جذري من حيث الأمان، إدارة الرموز والوصول إلى واجهة برمجة التطبيقات (API). هذا الدليل سيساعدك على فهم الفروقات الأساسية واختيار المنهج الأنسب لحالتك.

الخلفية: طريقتان لدمج GitHub

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

تخيل الأمر هكذا: تطبيقات OAuth مثل إعطاء شخص ما مفتاح رئيسي لمنزلك— يحصل على وصول واسع بعد التفويض. أما تطبيقات GitHub فهي أشبه بنظام قفل ذكي مع رموز وصول محددة لكل غرفة— يمكن للمستخدمين منح صلاحيات دقيقة لما يحتاجه تطبيقك فقط.

الفروقات الأساسية باختصار

الصلاحيات: التعميم مقابل الدقة

  • تطبيقات OAuth تستخدم نطاقات صلاحية واسعة— فعند طلب repo تحصل على تحكم كامل بالمستودع.
  • تطبيقات GitHub تطلب صلاحيات دقيقة— يمكنك أن تطلب فقط "مشاكل: قراءة" بدون المساس بالكود. يمكن للمستخدمين أيضًا اختيار مستودعات محددة أثناء التثبيت، وليس منح وصول شامل.

أمان الرموز: دائم مقابل مؤقت

  • تطبيقات OAuth تصدر رموزًا لا تنتهي صلاحيتها (حتى يتم إلغاؤها يدويًا)، ولا يوجد آلية للتجديد.
  • تطبيقات GitHub تصدر رموز ذات عمر قصير (تنتهي خلال ساعة واحدة) مع دعم التجديد التلقائي— ما يجعلها أكثر أمانًا لتطبيقات العمل لفترات طويلة.

الهوية: مستخدم مقابل روبوت

  • تطبيقات OAuth تعمل دومًا كمستخدم مفوض (مثلاً، @octocat) ويشتركان في نفس حد التردد (5,000 طلب/ساعة).
  • تطبيقات GitHub يمكن أن تعمل بشكل مستقل بهوية روبوت خاصة (مثلاً، @my-app[bot]) وتستفيد من حدود تردد قابلة للتوسع حسب الاستخدام— مثالي للأتمتة.

التحكم بالوصول: كلي أو انتقائي

  • تطبيقات OAuth تتطلب تفويض لمرة واحدة لجميع الموارد المتاحة.
  • تطبيقات GitHub تتيح للمستخدمين تثبيت التطبيق، اختيار مستودعات محددة، واستلام إشعارات webhook عند تغير الصلاحيات— ما يمنح شفافية وتحكمًا أفضل.

الاستمرارية: مرتبطة بالمستخدم مقابل الاستقلالية

  • تطبيقات OAuth مرتبطة بالمستخدم المفوض— إذا فقد هذا المطور صلاحياته أو غادر المنظمة، يتوقف التطبيق عن العمل.
  • تطبيقات GitHub تواصل العمل حتى لو غادر المطور الذي ثبّت التطبيق منظمتك— مما يضمن عدم انقطاع الخدمة للأتمتة والتكاملات.

أيهما تختار؟

كلا من تطبيقات GitHub و OAuth يعملان بسلاسة مع موصل Logto الاجتماعي. يقوم خزنة الأسرار في Logto بتخزين الرموز بأمان من أي من التكاملين، لكن كل منهما يقدم تجربة مختلفة:

تسجيل دخول اجتماعي بسيط مع تطبيقات OAuth

إذا كنت تحتاج فقط إلى مصادقة المستخدمين (تسجيل الدخول بواسطة GitHub) ولا تقوم باستدعاء واجهات GitHub لاحقًا، فإن مسار OAuth هو الأسرع:

  • إعداد بسيط: المستخدمون يفوضون تطبيق OAuth الخاص بك ويسجلون الدخول عبر GitHub.
  • الرموز طويلة الأجل (بدون تجديد): يمكن لـ Logto تخزين رمز الوصول في خزنة الأسرار، لكن لا يوجد تدفق للتجديد — الرموز تظل صالحة حتى يتم إلغاؤها.
  • الأفضل عندما تحتاج فقط إلى هوية المستخدم (البريد الإلكتروني، الاسم، الصورة الشخصية) ولا تقوم بعمل آلي عبر API.

لماذا تختاره: الأسرع للتنفيذ للنماذج الأولية أو التطبيقات التي تحتاج فقط تسجيل دخول ومزامنة ملف شخصي من حين لآخر.

تكامل متقدم مع تطبيقات GitHub

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

  • صلاحيات دقيقة واختيار المستودعات لكل تثبيت يبقي الوصول محدودًا وقابلًا للتدقيق.
  • الرموز قصيرة الأجل (عادة ساعة واحدة) ويمكن لتطبيقات GitHub توفير رموز تجديد؛ عند التفعيل، يخزن Logto كل من رمزي الوصول والتجديد في خزنة الأسرار ويتعامل مع التدوير حتى يستمر العمل في الخلفية بدون إعادة تسجيل دخول المستخدم.
  • هوية التطبيق (الروبوت) تحسن النقل وتسمح بحدود طلبات أعلى وأكثر موثوقية للأتمتة الكثيفة.

مثالية لـ:

  • منصات SaaS التي تدير مستودعات GitHub بالنيابة عن المستخدمين
  • وكلاء الذكاء الاصطناعي الذين يتفاعلون مع الكود أو المشاكل أو طلبات السحب
  • تطبيقات تحتاج وصول طويل الأمد عبر الـ API
  • أدوات تنفذ مهام أتمتة خلفية

إعداد تطبيق GitHub مع Logto

إعداد تطبيق GitHub يشبه إلى حد كبير إعداد OAuth مع بعض الاختلافات الأساسية. الانتقال من OAuth إلى GitHub App يتطلب جهدًا بسيطًا.

إنشاء تطبيق GitHub

  1. انتقل إلى "إعدادات GitHub > إعدادات المطور > تطبيقات GitHub"

  2. اضغط "تطبيق GitHub جديد"

  3. قم بالتكوين:

    • اسم تطبيق GitHub: معرف فريد لتطبيقك
    • رابط الصفحة الرئيسية: موقع تطبيقك
    • رابط العودة: عنوان الاتصال المرتد لموصل Logto (نفسه كما في تطبيق OAuth)
    • طلب تفويض المستخدم (OAuth) أثناء التثبيت: قم بتفعيله
    • Webhook: اختياري، حسب حاجتك
    • الصلاحيات: اختر الصلاحيات الدقيقة (مثلاً، "مشاكل: قراءة")
    • صلاحيات المستخدم: أضف صلاحيات حساب إذا كان التطبيق يتصرف نيابة عن المستخدمين
  4. أنشئ سر العميل (كما هو في تطبيق OAuth)

integrate-github-apps.png

التكوين في Logto

إعداد موصل Logto شبه مطابق:

  1. أدخل معرّف العميل من تطبيق GitHub
  2. أضف سر العميل
  3. فعّل "تخزين الرموز للوصول الدائم عبر API" إذا كنت بحاجة لاستدعاء واجهات GitHub
  4. الفارق الأساسي - النطاقات:
    • على عكس تطبيقات OAuth (التي تحتاج إضافة نطاقات في حقل النطاق في Logto)، صلاحيات تطبيقات GitHub تُختار من إعدادات تطبيقك في GitHub.
    • فقط اترك حقل النطاق فارغًا في Logto
  5. طلب رمز التجديد (اختياري)
    • أضف offline_access إلى حقل النطاقات في Logto لتفعيل رموز التجديد
    • يصدر GitHub رمز تجديد تلقائيًا، ويتولى Logto التدوير ويخزن كلا الرمزين في خزنة الأسرار
    • ملاحظة: تطبيقات OAuth لا تدعم رموز التجديد— رموز الوصول الخاصة بها لا تنتهي أبدًا، لذا لا ينطبق offline_access. هذا يختلف عن استخدام تكامل تطبيقات GitHub.

integrate-github-connector-in-logto.png

الخلاصة

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

بالنسبة لمستخدمي Logto، كلا الخيارين يعملان مع الموصل الاجتماعي. القرار يعتمد على حاجتك الفعلية:

  • ابدأ ببساطة مع تطبيقات OAuth إذا كنت بحاجة فقط للمصادقة
  • انتقل إلى تطبيقات GitHub عندما تحتاج الوصول إلى واجهات API أو الأتمتة أو أمان متقدم

تذكّر— خزنة الأسرار في Logto وقدرات التجديد التلقائي للرموز تجعل إدارة رموز تطبيقات GitHub بسيطة مثل تطبيقات OAuth، بدون التضحية بالأمان. سواء كنت تبني مساعد كود ذكاء اصطناعي، منصة إدارة مشاريع أو أداة إنتاجية للمطورين، لديك الآن المعرفة لاختيار تكامل GitHub المناسب لتطبيق Logto الخاص بك.

هل أنت مستعد للبدء؟ تصفح موصل GitHub في Logto وابدأ دمج مصادقة GitHub اليوم.

مصادر إضافية