إعداد Github OAuth 2.0 (معرف العميل والسر العميل)

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

Amir Hassan

Amir Hassan

17 أغسطس 2025

إعداد Github OAuth 2.0 (معرف العميل والسر العميل)

Apidog للمؤسسات

النشر على الخوادم المحلية

SSO و RBAC

متوافق مع SOC 2

استكشف Apidog للمؤسسات

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

OAuth 2.0

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

تدفقات التفويض الشائعة

تنفذ بروتوكولات OAuth 2.0 التفويض من خلال تدفقات تفويض متنوعة. تشمل تدفقات التفويض الشائعة ما يلي:

كيفية إعداد GitHub OAuth 2.0 (معرف العميل والسر العميل)

الخطوة 1: إنشاء التطبيق والحصول على معرف العميل والسر العميل

للحصول على معرف العميل والمفتاح العميل، نحتاج أولًا إلى إنشاء تطبيق. انقر على هذا الرابط لإنشاء واحد في GitHub: https://github.com/settings/applications/new، ثم قم بملء "رابط الصفحة الرئيسية" هنا اسم المجال، إذا كان لديك تصحيح محلي، يمكنك ملء الخدمة المحلية الخاصة بك، مثل http://127.0.0.1:8000.

املأ عنوان الاسترجاع الخاص بك في "عنوان URL للاسترجاع من التفويض"، والذي يمكن أن يكون اسم مجالك أو عنوان الاسترجاع المحلي الخاص بك، مثل http://127.0.0.1:8000/callback.

بعد ملء التكوين ذي الصلة، انقر على "تسجيل التطبيق" لإنشائه.

إنشاء تطبيق

بعد إنشاء التطبيق، يتم توليد معرف العميل والسر العميل. يجب توليد المفتاح العميل بشكل منفصل. انقر على "إنشاء سر عميل جديد" لتوليد مفتاح.

معرف العميل

الخطوة 2: الحصول على رمز الوصول

عندما تكون الخطوة الأولى جاهزة، يمكننا التقدم للحصول على رمز وصول (Token). سنوضح هذه الخطوة من خلال Apidog. Apidog هو أداة ممتازة لتصحيح وإدارة واجهات برمجة التطبيقات.

يمكنك الحصول على رمز الوصول مباشرة في Apidog. إذا لم يكن لديك Apidog مثبتًا بعد، قم بتنزيله الآن!

زر
  1. قم بإنشاء مشروع HTTP جديد في Apidog وافتحه، ثم أنشئ طلبًا جديدًا في المشروع واختر [تعديل المستند -> مصادقة -> OAuth 2.0 -> الخيار.
OAuth 2.0

2. تكوين معرف العميل والمفتاح العميل وعنوان الاسترجاع
الوضع الافتراضي للاعتماد المحدد في صفحة OAuth 2.0 في Apifdog هو رمز التفويض (وضع رمز التفويض).

نظرًا لأن GitHub OAuth 2.0 تستخدم أيضًا رمز التفويض (وضع رمز التفويض)، فلا تحتاج إلى التبديل هنا.

رمز التفويض

ثم ابحث عن معرف العميل والسر العميل وعنوان URL للاسترجاع في أسفل الصفحة. سيتم الحصول على معرف العميل (معرف العميل) والسر العميل (السر العميل) وعنوان الاسترجاع الذي تم تكوينه (عنوان URL للاسترجاع) من خدمة OAuth 2.0 الخاصة بـ GitHub.

فقط قم بملئها. المعلمات المحددة هي التكوينات في "الخطوة 1" أعلاه.

عنوان URL للاسترجاع

3. تكوين عنوان طلب رمز التفويض
وفقًا لوثائق GitHub الرسمية، عند تنفيذ مصادقة OAuth 2.0، يكون عنوان الطلب (عنوان URL للمصادقة) لرمز التفويض هو:
https://github.com/login/oauth/authorize
فقط قم بملء عنوان الطلب الخاص برمز التفويض هذا في عنوان URL للمصادقة. يمكننا أن نفهم هذا العنوان على أنه صفحة تسجيل دخول التفويض.

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

بشكل عام، عند إنشاء صفحة تسجيل دخول التفويض يدويًا، يجب تضمين بعض المعلمات بعد عنوان التفويض.

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

بالطبع، إذا كنت ترغب في تضمين بعض معلمات الاستعلام، يمكنك أيضًا إضافتها. انقر على الأيقونة خلف مربع الإدخال للإضافة:

معلمات الاستعلام

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

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

4. تكوين عنوان طلب رمز الوصول
وفقًا لوثائق GitHub الرسمية، للتقدم للحصول على رمز وصول، العنوان المطلوب هو:
https://github.com/login/oauth/access_token
فقط قم بملء العنوان أعلاه في حقل إدخال عنوان URL لرمز الوصول في صفحة OAuth 2.0 الخاصة بـ Apidog.

5. الحصول على رمز الوصول ل خدمة GitHub OAuth 2.0
بعد إعداد عناصر التكوين أعلاه، يمكنك النقر على زر "الحصول على الرمز" للحصول على رمز الوصول.

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

بعد ملء اسم المستخدم وكلمة المرور، سيُطلب منك تأكيد التفويض أو القيام بالتحقق بخطوتين. بعد التحقق، انقر على تأكيد.

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

الخطوة 3: الوصول إلى الموارد المفتوحة بناءً على الرمز

بعد أن تحصل على رمز الوصول (Token)، يمكنك استخدام هذا الرمز لاستدعاء الموارد المفتوحة لـ GitHub. يمكنك عرض الموارد المفتوحة المحددة في واجهة برمجة التطبيقات الخاصة بـ GitHub.

على سبيل المثال، واجهة برمجة التطبيقات التالية تحصل على معلومات المستخدم. إذا لم تتم استعادة واجهتك، تحتاج إلى التحقق مما إذا كان لديك الأذونات. كما ذُكر في القسم 3 من "الخطوة 2"، فقط قم بتكوينه في النطاق.

عند إرسال طلب، سيقوم Apidog تلقائيًا بإضافة الرمز إلى تفويض رأس الطلب، ويضيفه إلى البير، ويرسله. إذا كنت ترغب في تضمين الرمز في عنوان URL، يمكنك أيضًا تعديل "إضافة موقع" للرمز في عناصر التكوين الخاصة بالصفحة واختيار "معلمات الاستعلام".

الملخص

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

زر

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات