कनेक्शन (प्रति-उपयोगकर्ता OAuth2)
संबंध यह हैं कि एक अलग उपयोगकर्ता अपने स्वयं के behalf पर AiHummer को तीसरे-पक्ष सेवा तक पहुँच कैसे देता है। एक साझा सेवा खाते के बजाय, प्रत्येक व्यक्ति एक मानक चलाता है OAuth2 प्राधिकरण-कोड प्रवाह, परिणामी टोकन एन्क्रिप्टेड वॉल्ट में सील किया जाता है, और टर्न के समय रनटाइम उस टोकन को हल करता है जब किसी टूल को इसकी आवश्यकता होती है।
यह AiHummer के क्रेडेंशियल मॉडल का “व्यक्तिगत” हिस्सा है। व्यापक दृष्टिकोण के लिए — कब साझा क्रेडेंशियल पसंद करें और फॉलबैक कैसे काम करता है — देखें व्यक्तिगत बनाम साझा प्रमाण पत्र.
एक कनेक्शन क्या है
एक कनेक्शन तीन चीज़ों को एक साथ जोड़ता है: एक प्रदाता (जिस OAuth2 ऐप को आप प्राधिकृत कर रहे हैं), एक उपयोगकर्ता (व्यक्ति जिसने सहमति स्क्रीन पूरी की), और एक तिजोरी में प्रवेश (जहां जारी किया गया टोकन संग्रहित किया जाता है)। एक बार स्थापित होने के बाद, कोई भी टूल जो उस उपयोगकर्ता की ओर से कार्य करता है, बिना टोकन मॉडल संदर्भ, लॉग या प्रॉम्प्ट में कभी दिखे, पारदर्शी रूप से इसका उपयोग कर सकता है।
कनेक्शनों का प्रबंधन एडमिन UI से किया जाता है। सूची में प्रत्येक उपयोगकर्ता के जुड़े प्रदाता, उनकी स्थिति और उन्हें अंतिम बार कब रिफ्रेश किया गया था, दिखाया जाता है।
प्राधिकरण-कोड प्रवाह
कैनोनिकल तीन-स्टेप OAuth2 ऑथराइजेशन-कोड ग्रांट के साथ एक कनेक्शन बनाया जाता है:
- उपयोगकर्ता एडमिन UI से एक प्रदाता के लिए कनेक्शन शुरू करता है — एक
POST/GET /v1/admin/connections/oauth/startअनुरोध। - AiHummer ब्राउज़र को प्रदाता की ओर मोड़ता है प्राधिकरण अंत बिंदु अनुरोधित स्कोप्स के साथ।
- उपयोगकर्ता सहमति स्क्रीन को स्वीकृत करता है; प्रदाता वापस आगे बढ़ता है
एक बार का अनुमति कोड को
/v1/admin/connections/oauth/callback. - कॉलबैक हैंडलर के भीतर, AiHummer उस कोड को सर्वर-साइड पर एक के लिए एक्सचेंज करता है एक्सेस टोकन (और, जब प्रदाता इसका समर्थन करता है, एक रीफ़्रेश टोकन) प्रदाता के टोकन एंडपॉइंट पर।
- टोकन को वॉल्ट में लिखा जाता है और कनेक्शन को सक्रिय चिह्नित किया जाता है।
कोड-के-मुद्रा एक्सचेंज का संचालन सर्वर-साइड किया जाता है कॉलबैक के अंदर, इसलिए क्लाइंट सीक्रेट और जारी किया गया टोकन कभी भी गेटवे से बाहर नहीं निकलते।
[!NOTE] इस प्रवाह को इससे भ्रमित न करें
POST /v1/oauth/token: वह AiHummer का है स्वयं OAuth2 क्लाइंट-क्रेडेंशियल्स एंडपॉइंट — सेवा खाते द्वारा पंजीकृत/v1/admin/apikeys/register-clientउनका आदान-प्रदानclient_id/client_secretवहाँ थोड़ी देर के लिएah-टोकन। इसका तीसरे पक्ष से कोई लेना-देना नहीं है संपर्क।
[!NOTE] प्राधिकरण-कोड प्रवाह में हमेशा एक वास्तविक ब्राउज़र सहमति चरण शामिल होता है। A केवल API कुंजी से हेड-लेस कनेक्शन नहीं बनाया जा सकता — कार्यरत उपयोगकर्ता स्कोप्स को एक बार मंजूरी देनी चाहिए।
जहां टोकन रहता है
जारी किया गया टोकन AiHummer में संग्रहीत है एन्क्रिप्टेड क्रेडेंशियल वॉल्टसाधारण कॉन्फ़िगरेशन में नहीं। वॉल्ट एनवलॉप एन्क्रिप्शन का उपयोग करता है (मास्टर कुंजी के तहत प्रति-टेनेंट डेटा कुंजी के साथ AES-256-GCM), और गुप्त जानकारी कभी भी मॉडल संदर्भ, प्रॉम्प्ट या लॉग में कॉपी नहीं की जाती। रद्द या समाप्त कनेक्शन बस पीछे कोई उपयोगी गुप्त जानकारी नहीं छोड़ता।
oauth/start ─▶ consent ─▶ code ─▶ oauth/callback (exchange at the provider) ─▶ access/refresh token ─▶ vault (encrypted)
कार्यवाही करने वाले उपयोगकर्ता द्वारा हल किया गया
कनेक्शन की परिभाषात्मक विशेषता यह है कि यह कार्यकारी उपयोगकर्ता द्वारा हल किया गयाजब कोई एजेंट ऐसा टूल चलाता है जिसे प्रदाता की आवश्यकता होती है, तो रनटाइम उस उपयोगकर्ता से संबंधित कनेक्शन को देखता है जिसके पक्ष में टर्न चल रहा है, और उनका टोकन उपयोग करता है। इसलिए, एक ही एजेंट से बात कर रहे दो कर्मचारी अपने-अपने प्राधिकरण के साथ कार्य करते हैं और केवल वही देखते हैं जो उनकी अपनी अनुमति की अनुमति देती है।
यही कारण है कि Connections को व्यक्तिगत, प्रति-उपयोगकर्ता एकीकरण के लिए उपयुक्त बनाता है: प्रत्येक व्यक्ति की पहुँच अलग होती है, उसे ऑडिट किया जा सकता है और व्यक्तिगत रूप से समाप्त किया जा सकता है।
उपलब्ध एकीकरण
OAuth2 प्रवाह के माध्यम से एक उपयोगकर्ता अपने खाते को किसी भी शिपिंग सेवा से जोड़ सकता है। ये व्यक्तिगत एकीकरण पहले से ही उपलब्ध हैं:
| समूह | सेवाएँ |
|---|---|
| गूगल | जीमेल, गूगल कैलेंडर, गूगल संपर्क, गूगल कार्य, गूगल ड्राइव, यूट्यूब |
| माइक्रोसॉफ्ट | आउटलुक मेल, आउटलुक कैलेंडर, वनड्राइव, माइक्रोसॉफ्ट टू डू |
| उत्पादकता | टोडोइस्ट, आसान, जीरा क्लाउड, क्लिकअप, गिटलैब, लिनियर, मंडे.com |
| स्वास्थ्य और जीवनशैली | फिटबिट, ओरा रिंग, स्ट्रावा, स्पॉटिफ़ाई, सैमसंग स्मार्टथिंग्स |
हर एक उसी प्राधिकरण-कोड फ्लो से जुड़ता है: उपयोगकर्ता प्रदाता की सहमति स्क्रीन पूरी करता है, टोकन वौल्ट में सील हो जाता है, और जब भी कोई टूल सेवा तक पहुँचता है, यह उस उपयोगकर्ता के लिए हल हो जाता है।
एडमिन यूआई में कनेक्शन का प्रबंधन करना
एडमिन UI से एक ऑपरेटर कर सकता है:
- देखें कि प्रत्येक उपयोगकर्ता ने कौन-कौन से प्रदाताओं को जोड़ा है और प्रत्येक टोकन की स्थिति क्या है।
- नया कनेक्शन शुरू करें (चुने हुए प्रदाता के लिए सहमति प्रक्रिया शुरू करना)।
- कनेक्शन रद्द करें, जो वॉल्ट एंट्री को हटाता है और समाधान को अक्षम करता है।
संपर्क या तो व्यक्तिगत (किसी विशेष उपयोगकर्ता के स्वामित्व में, जो उन्हें डिस्कनेक्ट कर सकता है) या वर्कस्पेस के साथ साझा किया गया (टैग किया गया “वर्कस्पेस साझा”; उन्हें व्यक्तिगत रूप से डिस्कनेक्ट नहीं किया जा सकता). एक प्रदाता हो सकता है कई खाते: “खाता” बटन एक लेबल और उसी प्रदाता के एक और प्रमाण पत्र के लिए पूछता है — जैसे कि कई Google कैलेंडर या मेलबॉक्स।
क्योंकि नीचे की प्रमाण-पत्र व्यक्तिगत होते हैं, एक कनेक्शन सबसे अधिक इस्तेमाल होने वाला उपकरण होता है जब किसी कार्रवाई को किसी विशेष व्यक्ति के प्राधिकरण के अनुसार मान्यता और सीमित करना हो, न कि पूरे वर्कस्पेस-व्यापी खाते के अनुसार।
अगला कहाँ
- व्यक्तिगत बनाम साझा प्रमाण पत्र — पूरा स्कोप मॉडल और प्रत्येक को कब चुनना चाहिए।
- BYOK LLM प्रदाता — अपने खुद के मॉडल कीज़ लाओ प्रति किरायेदार।
- मार्केटप्लेस अवलोकन और स्तर — कहाँ OAuth-समर्थित एकीकरण फिट होते हैं।