सामग्री पर जाएं

प्रदाता OAuth सेटअप

OAuth एप्लिकेशन पंजीकृत करें और Repovio के लिए रीड-ओनली प्रदाता प्रमाणीकरण कॉन्फ़िगर करें।

इस पृष्ठ के PAT/OAuth निर्देश प्रति रिपॉज़िटरी वेबहुक उपयोग करते हैं। GitHub App कनेक्शन एक केंद्रीय वेबहुक और ऐप संवाद से कॉन्फ़िगर होते हैं।

Repovio प्रदाता खातों को OAuth या व्यक्तिगत एक्सेस टोकन (PAT) के माध्यम से जोड़ता है। OAuth तब उपलब्ध होता है जब कम से कम एक प्रदाता OAuth क्लाइंट कॉन्फ़िगर किया गया हो। किसी भी कॉन्फ़िगर किए गए OAuth क्लाइंट के बिना, प्रदाता-खाता स्क्रीन केवल PAT प्रमाणीकरण प्रदान करता है। Repovio या तो परिणामी क्रेडेंशियल का उपयोग केवल अपने रीड-ओनली प्रदाता एपीआई के लिए करता है और इसे PostgreSQL पर लिखने से पहले एन्क्रिप्ट करता है।

OAuth एप्लिकेशन पंजीकृत करें

प्रत्येक प्रदाता इंस्टेंस के लिए एक OAuth एप्लिकेशन पंजीकृत करें जिससे Repovio को कनेक्ट होना चाहिए। प्रत्येक एप्लिकेशन पंजीकरण में OAUTH_CALLBACK_URL से सटीक कॉलबैक यूआरएल सेट करें। स्थानीय स्थापना के लिए डिफ़ॉल्ट http://localhost:3001/api/v1/provider-accounts/oauth/callback है।

क्लाइंट आईडी और क्लाइंट सीक्रेट को एपीआई वातावरण में कॉन्फ़िगर करें, वेब एप्लिकेशन या गिट में कभी नहीं:

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=...

केवल उन्हीं प्रदाताओं को कॉन्फ़िगर करें जिनकी इस स्थापना को आवश्यकता है। क्लाइंट आईडी और रहस्यों को हमेशा जोड़े के रूप में कॉन्फ़िगर किया जाना चाहिए। GITLAB_OAUTH_BASE_URL स्थापित OAuth एप्लिकेशन के लिए एकल GitLab उदाहरण की पहचान करता है। जब OAuth क्लाइंट कॉन्फ़िगर किया जाता है तो Forgejo को एक स्पष्ट आधार URL की आवश्यकता होती है।

स्कोप पढ़ें

एप्लिकेशन पंजीकृत करते समय इन क्षेत्रों का उपयोग करें:

  • GitHub: repo security_events। Repovio सुरक्षा अलर्ट पढ़ने से पहले मौजूदा OAuth खातों को फिर से अधिकृत किया जाना चाहिए।
  • GitLab: read_api read_user।

बारीक-बारीक GitHub व्यक्तिगत एक्सेस टोकन को डिपेंडाबॉट अलर्ट, कोड स्कैनिंग अलर्ट और गुप्त स्कैनिंग अलर्ट तक पढ़ने की पहुंच की आवश्यकता होती है। GitLab सुरक्षा चेतावनी पहुंच अतिरिक्त रूप से इंस्टेंस लाइसेंस और टोकन मालिक की परियोजना भूमिका पर निर्भर करती है; अनुपलब्ध अलर्ट प्रकार अन्य रिपॉजिटरी सिंक्रनाइज़ेशन स्कोप को विफल किए बिना दिखाए जाते हैं।

  • Forgejo: read:repository।
  • Gitea: इंस्टेंस बेस यूआरएल सहित, Gitea प्रदाता-खाता फॉर्म में रीड एक्सेस के साथ एक व्यक्तिगत एक्सेस टोकन कॉन्फ़िगर करें। Repovio वर्तमान में एक साझा Gitea OAuth क्लाइंट की पेशकश नहीं करता है क्योंकि प्रत्येक स्व-होस्टेड इंस्टेंस को अपने स्वयं के एप्लिकेशन पंजीकरण की आवश्यकता होती है।

Repovio के एडेप्टर केवल सत्यापन, खोज, वर्कफ़्लो सिंक्रोनाइज़ेशन और वेबहुक सत्यापन को उजागर करते हैं। वे प्रदाता संसाधनों का निर्माण, अद्यतन, प्रेषण, पुन: संचालन, रद्द या हटाते नहीं हैं। OAuth क्लाइंट रहस्य एपीआई वातावरण में रहते हैं, और प्रदाता टोकन Repovio एपीआई द्वारा कभी वापस नहीं किए जाते हैं।

GitHub App सेटअप