टोकन
मान लीजिए आपने एक कपड़ों की दुकान का ऑनलाइन शॉपिंग मॉल बनाया है। कंटेंट स्टूडियो में दर्ज किए गए उत्पादों को आप ग्राहक जिस शॉपिंग मॉल साइट को देखते हैं, वहाँ लाकर दिखाना चाहते हैं। लेकिन वह साइट कोई इंसान नहीं, बल्कि एक प्रोग्राम है। यह इंसान की तरह आईडी और पासवर्ड से लॉग इन नहीं कर सकता। ऐसी स्थिति में इंसान के बजाय साइट या प्रोग्राम को कंटेंट तक पहुँचने देने के लिए जारी की जाने वाली गुप्त चाबी ही टोकन है।
टोकन को आप ताला खोलने वाली एक चाबी समझ सकते हैं। यह चाबी जिसके पास होती है, वह बिना लॉग इन किए भी तय सीमा के भीतर कंटेंट संभाल सकता है। इसीलिए टोकन को बिलकुल पासवर्ड की तरह संभालना चाहिए। इसे किसी को भी नहीं दिखाना चाहिए, और अगर यह लीक हो जाए तो जिसके हाथ लगे वह उसी अधिकार का इस्तेमाल कर सकता है।
WEEGLOO में अलग-अलग काम की तीन तरह की चाबियाँ होती हैं। पूरे खाते की जगह लेने वाली ताकतवर चाबी (Personal Access Token), एक Space के भीतर कंटेंट पढ़ने और लिखने वाली चाबी (Space Access Token), और सार्वजनिक साइट पर कंटेंट पढ़कर भेजने के लिए केवल-पढ़ने वाली चाबी (Delivery Access Token)। इस पेज में हम पहले देखेंगे कि ये तीनों चाबियाँ क्या-क्या हैं और इन्हें कब इस्तेमाल किया जाता है, फिर कंटेंट स्टूडियो में इन्हें खुद जारी करके देखेंगे।
तीनों चाबियों का काम अलग है
पहले तीनों का अंतर एक नज़र में इस तरह है।
| Personal Access Token | Space Access Token | Delivery Access Token | |
|---|---|---|---|
| इस्तेमाल का दायरा | जारी करने वाला पूरा खाता | किसी एक खास Space के भीतर | किसी एक खास Space के भीतर |
| पढ़ना/लिखना | पढ़ना और लिखना दोनों | पढ़ना और लिखना दोनों | Published (प्रकाशित) कंटेंट को केवल पढ़ना |
| कहाँ रखें | केवल सर्वर के भीतर | भूमिका को सीमित करके सर्वर या क्लाइंट, कहीं भी | सार्वजनिक साइट में डाला जा सकता है |
| अधिकार का दायरा | खाते का अधिकार जस का तस (सीमित नहीं किया जा सकता) | जुड़ी हुई SpaceRole जितना ही | जुड़ी हुई SpaceRole जितना ही |
| किस काम में | पूरे खाते पर फैले प्रबंधन काम | किसी एक Space में कंटेंट लिखने वाला सर्वर या क्लाइंट (जैसे लॉग इन किए बिना पोस्ट छोड़ना) | सार्वजनिक साइट जब प्रकाशित कंटेंट पढ़कर दिखाती है |
मुख्य बात यह है। Personal Access Token किसी एक खाते के व्यक्ति की पूरी जगह लेने वाली लगभग सर्वमास्टर चाबी जैसी है, Space Access Token केवल एक Space के भीतर कंटेंट पढ़ने और लिखने वाली चाबी है, और Delivery Access Token प्रकाशित कंटेंट को बस पढ़ ले जाने वाली केवल-पढ़ने वाली चाबी है। आप जो काम करना चाहते हैं वह पूरे खाते पर फैला है, किसी एक Space के भीतर लिखने तक का है, या सार्वजनिक साइट पर बस पढ़ने का है, इसके अनुसार सही चाबी चुन लें।
पूरे खाते की जगह लेने वाली चाबी: Personal Access Token
Personal Access Token वह चाबी है जो जारी करने वाले खाते के मालिक का अधिकार जस का तस इस्तेमाल करती है। इस चाबी का इस्तेमाल करने पर, वह खाता कंटेंट स्टूडियो में जो कुछ कर सकता है, वह सब बिना लॉग इन किए वैसे ही किया जा सकता है। उत्पाद दर्ज करने, बदलने या प्रकाशित करने जैसे प्रबंधन काम तक संभव हैं।
इसीलिए यह चाबी ताकतवर है। इंसान के बजाय कंटेंट अपने आप चढ़ाने और बदलने वाले किसी प्रोग्राम को यह थमा दें, तो वह प्रोग्राम खाते के मालिक की तरह काम कर सकता है। कई Space के बीच आना-जाना हो या Space की सेटिंग तक संभालनी हो, ऐसे प्रबंधन काम के लिए यही चाबी चाहिए। इसके उलट, किसी एक Space के भीतर बस कंटेंट पढ़ने और लिखने भर का काम हो, तो पूरे खाते की जगह लेने वाली इस चाबी के बजाय आगे बताई गई Space Access Token से अधिकार सीमित कर देना ज़्यादा सुरक्षित है।
जितनी ताकतवर है, उसे संभालने में उतनी ही सावधानी ज़रूरी है। इस चाबी को ग्राहक तक पहुँचने वाले सार्वजनिक क्लाइंट में नहीं डालना चाहिए। सार्वजनिक जगह में डालने पर कोई भी चाबी निकालकर देख सकता है, और जिसके हाथ वह चाबी लगती है वह जारी करने वाले खाते का अधिकार जस का तस इस्तेमाल कर सकता है। सार्वजनिक साइट पर केवल उत्पाद लाकर दिखाना भर हो, तो इस ताकतवर चाबी के बजाय नीचे बताई Delivery Access Token का इस्तेमाल करें।
Personal Access Token जारी करते समय केवल नाम तय करना होता है। अधिकार का दायरा अलग से नहीं चुना जाता। यह जारी करने वाले खाते के अधिकार को जस का तस विरासत में पाती है।
एक Space में पढ़ने और लिखने वाली चाबी: Space Access Token
Space Access Token किसी एक खास Space के भीतर ही इस्तेमाल होने वाली चाबी है। Delivery Access Token जहाँ केवल पढ़ सकती है, उसके उलट इस चाबी से उस Space के भीतर के कंटेंट को पढ़ा तो जा ही सकता है, साथ ही लिखा भी जा सकता है। उत्पाद नया दर्ज करने या बदलने का काम, बिना किसी इंसान के लॉग इन किए, प्रोग्राम उसकी जगह कर सकता है।
उदाहरण के लिए, मान लीजिए आप चाहते हैं कि ग्राहक बिना लॉग इन किए भी कपड़ों की दुकान की साइट पर पूछताछ का संदेश छोड़ सके। ग्राहक जिस क्लाइंट का इस्तेमाल करता है उसे वह संदेश कपड़ों की दुकान वाली Space में नया लिखना होता है, पर केवल-पढ़ने वाली Delivery Access Token से कुछ लिखा नहीं जा सकता। और अगर पूरे खाते की जगह लेने वाली Personal Access Token को क्लाइंट में रख दें, तो वह चाबी लीक होने पर सिर्फ़ कपड़ों की दुकान ही नहीं, बल्कि जहाँ-जहाँ तक वह खाता पहुँचता है वह सब ख़तरे में पड़ जाता है। ऐसी स्थिति में इस्तेमाल होती है, केवल एक Space के भीतर लिखने तक की अनुमति देने वाली Space Access Token। ग्राहक के क्लाइंट से कंटेंट लिखवाने वाला यह मामला इस चाबी का सबसे आम इस्तेमाल है, और सर्वर से कंटेंट अपने आप दर्ज व संपादित करते समय भी इसका इस्तेमाल होता है।
Space Access Token केवल एक ही Space के भीतर काम करती है। यह कपड़ों की दुकान वाली Space के कंटेंट को पढ़ और लिख भले ले, पर किसी दूसरी Space में झाँकना, Space की सेटिंग बदलना, या संगठन और खाते को छेड़ना, ये काम नहीं कर सकती। इसीलिए एक ही जैसे लिखने के काम में भी यह Personal Access Token से ज़्यादा सुरक्षित है।
इस चाबी को कहाँ रखना है, यह इसके इस्तेमाल के अनुसार तय होता है। इसे सर्वर में भी रखा जा सकता है, और ग्राहक जिस क्लाइंट का इस्तेमाल करता है उसमें भी। सुरक्षा चाबी को कहीं छिपा देने से नहीं, बल्कि जुड़ी हुई भूमिका को उसके इस्तेमाल के अनुसार सीमित करके मिलती है। इसीलिए आगे यह अहम है कि भूमिका को कैसे जोड़ा जाए।
भूमिका जोड़कर पढ़ने-लिखने का दायरा तय करें
Space Access Token जारी करते समय भी यह चाबी कहाँ तक कर सकती है, यह SpaceRole (भूमिका) से तय करके साथ जोड़ा जाता है। Delivery Access Token की भूमिका जहाँ "कहाँ तक पढ़ा जा सकता है" तय करती है, उसके उलट Space Access Token की भूमिका "कहाँ तक पढ़ा और लिखा जा सकता है" तय करती है।
जुड़ी जाने वाली भूमिका को इस बात के अनुसार सीमित किया जाता है कि वह चाबी कहाँ रखी जा रही है। अगर यह सर्वर से उत्पाद अपने आप दर्ज व संपादित करने वाली चाबी है, तो उत्पाद (Content) पर केवल Read, Create, Edit की अनुमति देने और Delete, Publish न रखने वाली भूमिका जोड़ें। वहीं अगर यह ग्राहक के क्लाइंट में रखकर केवल पूछताछ के संदेश लेने वाली चाबी है, तो "पूछताछ का संदेश" नया बनाने (Create) की ही अनुमति देने वाली और भी सीमित भूमिका जोड़ें। ऐसा करने पर यह मान लीक भी हो जाए, तो हर एक के लिए अनुमत के बाहर कुछ भी नहीं किया जा सकेगा।
सब कुछ संभाल सकने वाली Administrator भूमिका न जोड़ें। जो चाबी लिखने तक की हो, और ख़ासकर जो ग्राहक के देख सकने वाली जगह पर रखी जाती हो, उसमें लीक हो जाने पर भी संभाली जा सकने लायक उतनी ही सीमित भूमिका जोड़ना सुरक्षित रहता है।
लिखने की अनुमति देने वाली भूमिका बनाने का तरीका भूमिका और अधिकार में बताया गया है। उस पेज में बनाई जाने वाली "उत्पाद पंजीकरण प्रभारी" भूमिका, उत्पाद को दर्ज व संपादित करने तक की अनुमति देने वाली लिखने के लिए बनी भूमिका का उदाहरण है।
एक Space में केवल पढ़ने वाली चाबी: Delivery Access Token
Delivery Access Token किसी एक खास Space के भीतर ही चलने वाली केवल-पढ़ने वाली चाबी है। इस चाबी से उस Space के भीतर Published (प्रकाशित) स्थिति वाले कंटेंट को बस पढ़ा जा सकता है। प्रकाशित न किए गए Draft स्थिति वाले कंटेंट इस चाबी से नहीं पढ़े जाते, और न ही उन्हें बदला या हटाया जा सकता है।
ग्राहक जिस शॉपिंग मॉल साइट को देखते हैं, वह जब उत्पाद लाकर दिखाती है तब इस्तेमाल होने वाली चाबी ठीक यही है। साइट को बस उत्पाद दिखाना भर है, उन्हें दर्ज या मिटाने की ज़रूरत नहीं, इसलिए केवल पढ़ सकने वाली सीमित चाबी ही काफ़ी है। यह चाबी लीक भी हो जाए तो बस प्रकाशित कंटेंट पढ़ा जा सकेगा, कंटेंट को बिगाड़ा नहीं जा सकता।
कंटेंट को प्रकाशित (Published) करना क्या होता है और प्रकाशित करने पर ही बाहर सार्वजनिक (वितरित) क्यों होता है, यह स्थिति और प्रकाशन में बताया गया है।
सीमित भूमिका जोड़कर पढ़ने का दायरा सीमित करें
Delivery Access Token जारी करते समय यह चाबी कहाँ तक पढ़ सकती है यह SpaceRole (भूमिका) से तय करके साथ जोड़ा जाता है। भूमिका "क्या, किस क्रिया तक किया जा सकता है" यह तय किया हुआ अधिकारों का समूह है। चाबी में भूमिका जोड़ने पर, वह चाबी जुड़ी भूमिका जितनी अनुमति देती है उतना ही पढ़ सकती है।
शॉपिंग मॉल साइट के लिए "उत्पाद" भर पढ़ना है, इसलिए उत्पाद (Content) पर केवल Read की अनुमति देने वाली एक सीमित भूमिका बनाकर जोड़ी जाती है। तब यह चाबी लीक हो जाए तब भी बस उत्पाद की जानकारी पढ़ी जा सकेगी, दूसरे कंटेंट या सदस्यों की जानकारी तक लीक नहीं होगी।
सब कुछ संभाल सकने वाली Administrator भूमिका न जोड़ें। Administrator उस Space के भीतर सब कुछ संभाल सकने वाली सर्वोच्च अधिकार वाली भूमिका है। केवल पढ़ने भर के काम आने वाली सार्वजनिक साइट की चाबी में इतना चौड़ा अधिकार जोड़ने पर, चाबी लीक होने पर ख़तरा बढ़ जाता है। केवल ज़रूरी चीज़ें पढ़ने तक सीमित भूमिका अलग से बनाकर जोड़ना सुरक्षित है।
भूमिका बनाने और अधिकार सीमित करने का तरीका भूमिका और अधिकार में बताया गया है। सार्वजनिक साइट की चाबी में जोड़ने के लिए, उत्पाद पर केवल Read की अनुमति देने वाली भूमिका उस पेज को देखकर पहले से बना लें।
जारी की गई गुप्त मान को संभालना
तीनों चाबियाँ, जारी होते ही स्क्रीन पर गुप्त टोकन मान दिखाती हैं। यही मान असल में वह चाबी है। सर्वर या साइट में डालते समय इसी मान का इस्तेमाल होता है। जारी होने के तुरंत बाद उसी जगह उसे कॉपी करके रख लें। टोकन के विवरण वाली स्क्रीन में इसे दोबारा भी देखा जा सकता है।
हालाँकि हर चाबी को रखने की जगह अलग है।
- Personal Access Token को पासवर्ड की तरह संभालें। यह ताकतवर चाबी है, इसलिए इसे केवल सर्वर के भीतर रखें, और ग्राहक के देख सकने वाले सार्वजनिक क्लाइंट या किसी और के देख सकने वाले कोड में न डालें।
- Space Access Token को कहाँ रखना है, यह जुड़ी हुई भूमिका से तय करें। सर्वर में रखी जाने वाली चाबी में उतनी ही लिखने वाली भूमिका जोड़ें जितनी ज़रूरी हो, और ग्राहक तक पहुँचने वाले क्लाइंट में रखी जाने वाली चाबी में लीक हो जाने पर भी संभाली जा सकने लायक सीमित भूमिका (जैसे केवल एक ही प्रकार का पोस्ट नया बनाना) जोड़ें। Administrator या चौड़ी लिखने वाली भूमिका को सार्वजनिक जगह पर रखी जाने वाली चाबी में न जोड़ें।
- Delivery Access Token इसके उलट, ग्राहक जिस सार्वजनिक साइट को देखते हैं उसमें डालना ही इसका असली उद्देश्य है। साइट खोलने वाला कोई भी इस मान को देख सकता है, फिर भी इसमें सीमित भूमिका जुड़ी होने के कारण कोई भी इस मान को ले जाए तो उस भूमिका की अनुमति वाले पढ़ने के दायरे के बाहर कुछ नहीं कर सकता। इसीलिए इसे साइट में डाल देना अपने आप में कोई समस्या नहीं है। बस जिस साइट के लिए इस्तेमाल करना है उसके बाहर इसे यूँ ही न फैलाएँ।
चाबी खो गई हो या इरादे से अलग तरीके से इस्तेमाल हुई लगे, तो उस चाबी को मिटाकर नई जारी करके बदल लें।
Personal Access Token जारी करना
हर रात अपने आप नए उत्पाद चढ़ाने वाले प्रोग्राम को थमाने के लिए Personal Access Token जारी करके देखते हैं।
- खाता सेटिंग में Personal Access Token स्क्रीन खोलें।
- ऊपर दाईं ओर बनाएं बटन दबाएँ।
- नाम वाले खाने में
रात की नई उत्पाद अपलोडदर्ज करें। यह नाम बाद में पहचानने के लिए है कि चाबी किस काम के लिए बनाई गई थी। - सहेजें बटन दबाकर जारी करें।

जारी होने के बाद गुप्त टोकन मान स्क्रीन पर दिखाई देता है। उसी जगह उसे कॉपी करके किसी सुरक्षित जगह रखें। स्क्रीन का रूप नीचे Delivery Access Token जारी करने के परिणाम जैसा ही है।
Space Access Token जारी करना
इस बार कपड़ों की दुकान वाली Space में उत्पाद अपने आप दर्ज करने वाले सर्वर के लिए इस्तेमाल होने वाली Space Access Token जारी करके देखते हैं। यह चाबी कपड़ों की दुकान वाली Space में इस्तेमाल होती है, और उत्पाद दर्ज व संपादित करने की अनुमति देने वाली भूमिका भी साथ जोड़ती है।
पहले इस चाबी में जोड़ने के लिए Space में एक भूमिका होनी चाहिए। उत्पाद (Content) को Read, Create, Edit कर सकने वाली भूमिका भूमिका और अधिकार में पहले से बना लें। नीचे हम मान लेते हैं कि वह भूमिका उत्पाद पंजीकरण प्रभारी नाम से बनाई गई है।
जारी करने और प्रबंधन की स्क्रीन Delivery Access Token की तरह उसी Space सेटिंग के भीतर होती है।
- कपड़ों की दुकान वाली Space की सेटिंग में Space Access Token स्क्रीन खोलें।
- ऊपर दाईं ओर बनाएं बटन दबाएँ।
- नाम वाले खाने में
नए उत्पाद स्वतः दर्ज करने वाला सर्वरदर्ज करें। - Space Role में
उत्पाद पंजीकरण प्रभारीचुनें। Administrator न चुनें। - बनाएं बटन दबाकर जारी करें।

जारी होने के बाद गुप्त टोकन मान स्क्रीन पर दिखाई देता है। उसी जगह उसे कॉपी करके किसी सुरक्षित जगह रखें। यहाँ हमने उत्पाद दर्ज व संपादित करने की अनुमति देने वाली भूमिका जोड़ी है, इसलिए यह चाबी उसी भूमिका की ज़रूरत वाले सर्वर में इस्तेमाल होती है। अगर इसे ग्राहक जिस क्लाइंट का इस्तेमाल करता है उसमें सीधे रखना हो, तो लीक हो जाने पर भी संभाली जा सकने लायक और भी सीमित भूमिका जोड़ी हुई चाबी अलग से जारी करके इस्तेमाल करें। स्क्रीन का रूप नीचे Delivery Access Token जारी करने के परिणाम जैसा ही है।
Delivery Access Token जारी करना
इस बार शॉपिंग मॉल साइट जब उत्पाद लाकर दिखाएगी तब इस्तेमाल होने वाली Delivery Access Token जारी करके देखते हैं। यह चाबी कपड़ों की दुकान वाली Space में इस्तेमाल होती है, और उत्पाद पढ़ सकने वाली एक सीमित भूमिका भी साथ जोड़ती है।
पहले इस चाबी में जोड़ने के लिए Space में एक भूमिका होनी चाहिए। उत्पाद (Content) पर केवल Read की अनुमति देने वाली भूमिका भूमिका और अधिकार में पहले से बना लें। नीचे हम मान लेते हैं कि वह भूमिका उत्पाद केवल पढ़ने नाम से बनाई गई है।
- कपड़ों की दुकान वाली Space की सेटिंग में Delivery Access Token स्क्रीन खोलें।
- ऊपर दाईं ओर बनाएं बटन दबाएँ।
- नाम वाले खाने में
शॉपिंग मॉल साइट वितरण के लिएदर्ज करें। - विवरण वाले खाने में इस चाबी को कहाँ इस्तेमाल करना है यह लिखा जा सकता है। (यह वैकल्पिक है।)
- Space Role में
उत्पाद केवल पढ़नेचुनें। Administrator न चुनें। - बनाएं बटन दबाकर जारी करें।

जारी होने के बाद गुप्त टोकन मान स्क्रीन पर दिखाई देता है। उसी जगह उसे कॉपी करके किसी सुरक्षित जगह रखें।

जो चाबी अब इस्तेमाल नहीं हो रही उसे मिटा दें
जो चाबी इस्तेमाल में नहीं रही उसे यूँ ही न छोड़ें, मिटा देना सुरक्षित है। टोकन सूची में जो चाबी अब इस्तेमाल नहीं हो रही उसे ढूँढकर मिटा दें। चाबी मिटा देने पर उस चाबी से आगे कोई पहुँच नहीं रह जाती। चाबी लीक हो गई लगे तब भी यही करें। संदिग्ध चाबी मिटाकर नई जारी करके बदल लें।
आगे क्या करें
- भूमिका और अधिकार: Delivery Access Token में जोड़ने के लिए केवल-पढ़ने वाली भूमिका, और Space Access Token में जोड़ने के लिए पढ़ने-लिखने वाली भूमिका बनाते हैं।
- स्थिति और प्रकाशन: Delivery Access Token से जो पढ़ा जाता है वह केवल Published स्थिति वाला कंटेंट है। प्रकाशन क्या है यह जानते हैं।
- Space Access Token: प्रोग्राम में Space Access Token जारी करने या इस चाबी से कंटेंट पढ़ने और लिखने के लिए ज़रूरी अनुरोध प्रारूप जैसी तकनीकी विशिष्टियाँ बताती है।
- API रेफ़रेंस: दूसरे टोकन जारी करने या कंटेंट को प्रोग्राम में सीधे संभालने के लिए ज़रूरी अनुरोध प्रारूप जैसी तकनीकी विशिष्टियाँ बताती है।
