فراہم کنندہ OAuth سیٹ اپ
محفوظ شدہ ماخذ سنیپ شاٹ۔ پروڈکٹ لیبلز Repovio استعمال کرتے ہیں۔ اس ریلیز کی ٹیگ شدہ تعیناتی فائلوں سے کنفیگریشن شناخت کنندگان اور کنٹینر حوالہ جات کو بغیر تبدیلی کے استعمال کریں۔
Repovio OAuth یا ذاتی رسائی ٹوکن (PAT) کے ذریعے فراہم کنندہ کے اکاؤنٹس کو جوڑتا ہے۔ OAuth دستیاب ہوتا ہے جب کم از کم ایک فراہم کنندہ OAuth کلائنٹ کنفیگر ہوتا ہے۔ بغیر کسی ترتیب شدہ OAuth کلائنٹس کے، فراہم کنندہ اکاؤنٹ اسکرین صرف PAT تصدیق پیش کرتی ہے۔ Repovio اپنے صرف پڑھنے کے لیے فراہم کنندہ APIs کے لیے یا تو نتیجے کی سند کا استعمال کرتا ہے اور اسے PostgreSQL پر لکھنے سے پہلے انکرپٹ کرتا ہے۔
OAuth درخواستیں رجسٹر کریں۔
ہر فراہم کنندہ مثال کے لیے ایک OAuth ایپلیکیشن رجسٹر کریں جسے Repovio سے منسلک ہونا چاہیے۔ ہر درخواست کے اندراج میں
OAUTH_CALLBACK_URL سے درست کال بیک URL سیٹ کریں۔ مقامی تنصیب کے لیے ڈیفالٹ
http://localhost:3001/api/v1/provider-accounts/oauth/callback ہے۔
API ماحول میں کلائنٹ آئی ڈی اور کلائنٹ سیکریٹ کو ترتیب دیں، کبھی بھی ویب ایپلیکیشن یا گٹ میں:
OAUTH_CALLBACK_URL=https://repovio.example.com/api/v1/provider-accounts/oauth/callback
GITHUB_OAUTH_CLIENT_ID=...
GITHUB_OAUTH_CLIENT_SECRET=...
GITLAB_OAUTH_BASE_URL=https://gitlab.example.com
GITLAB_OAUTH_CLIENT_ID=...
GITLAB_OAUTH_CLIENT_SECRET=...
FORGEJO_OAUTH_BASE_URL=https://forgejo.example.com
FORGEJO_OAUTH_CLIENT_ID=...
FORGEJO_OAUTH_CLIENT_SECRET=...
صرف ان فراہم کنندگان کو ترتیب دیں جن کی اس تنصیب کی ضرورت ہے۔ کلائنٹ IDs اور رازوں کو ہمیشہ جوڑوں کے طور پر کنفیگر کیا
جانا چاہیے۔ GITLAB_OAUTH_BASE_URL انسٹال کردہ OAuth ایپلیکیشن کے لیے واحد GitLab مثال کی شناخت کرتا ہے۔ Forgejo کو ایک
واضح بنیادی URL کی ضرورت ہے جب اس کا OAuth کلائنٹ کنفیگر ہو۔
دائرہ کار پڑھیں
درخواست کو رجسٹر کرتے وقت ان اسکوپس کا استعمال کریں:
- GitHub:
repo security_events۔ اس سے پہلے کہ Repovio سیکیورٹی الرٹس کو پڑھ سکے موجودہ OAuth اکاؤنٹس کو دوبارہ مجاز ہونا چاہیے۔ - GitLab:
read_api read_user۔
عمدہ GitHub ذاتی رسائی ٹوکنز کو Dependabot الرٹس، کوڈ سکیننگ الرٹس، اور خفیہ سکیننگ الرٹس تک رسائی کی ضرورت ہوتی ہے۔ GitLab سیکیورٹی الرٹ رسائی اضافی طور پر مثال کے لائسنس اور ٹوکن کے مالک کے پروجیکٹ کے کردار پر منحصر ہے۔ غیر دستیاب الرٹ کی قسمیں دیگر ریپوزٹری سنکرونائزیشن اسکوپس کو ناکام کیے بغیر دکھائی جاتی ہیں۔
- Forgejo:
read:repository۔ - Gitea: Gitea فراہم کنندہ اکاؤنٹ فارم میں پڑھنے کی رسائی کے ساتھ ایک ذاتی رسائی ٹوکن ترتیب دیں، بشمول مثال کے طور پر بنیادی URL۔ Repovio فی الحال مشترکہ Gitea OAuth کلائنٹ پیش نہیں کرتا ہے کیونکہ ہر خود میزبان مثال کو اپنی درخواست کے اندراج کی ضرورت ہوتی ہے۔
Repovio کے اڈاپٹر صرف توثیق، دریافت، ورک فلو سنکرونائزیشن، اور ویب ہک کی تصدیق کو ظاہر کرتے ہیں۔ وہ فراہم کنندہ کے وسائل کو تخلیق، اپ ڈیٹ، ڈسپیچ، دوبارہ چلانے، منسوخ یا حذف نہیں کرتے ہیں۔ OAuth کلائنٹ کے راز API ماحول میں رہتے ہیں، اور فراہم کنندہ کے ٹوکنز Repovio API کے ذریعے کبھی واپس نہیں کیے جاتے ہیں۔