इस दस्तावेज़ में बैकग्राउंड की उस जानकारी के बारे में बताया गया है जिसकी ज़रूरत आपको Google Site Verification API का इस्तेमाल करने के लिए है.
परिचय
Google Site Verification API उन डेवलपर के लिए है जो ऐसे ऐप्लिकेशन या सेवाएं लिखना चाहते हैं इससे किसी साइट या डोमेन के मालिकाना हक की पुष्टि करने की प्रोसेस को ऑटोमेट किया जा सकता है. यह अहम है, क्योंकि कुछ Google सेवाओं का इस्तेमाल सिर्फ़ वेबसाइट या डोमेन के मालिक कर सकते हैं. Google साइट की पुष्टि करने वाले एपीआई का इस्तेमाल इन कामों के लिए किया जा सकता है इस बात की पुष्टि करेगा कि पुष्टि किया गया उपयोगकर्ता उस डोमेन या साइट का मालिक है जो इसे पहले डोमेन या साइट का मालिक बना सकता है प्रोग्राम बनाकर अन्य Google सेवाओं को प्रोविज़न करने का चरण पूरा करें.
यह दस्तावेज़ मानता है कि आपको वेब प्रोग्रामिंग कॉन्सेप्ट, वेब डेटा फ़ॉर्मैट, और प्रोग्राम बनाकर अपनी वेबसाइट या डोमेन की फ़ाइलों या डीएनएस रिकॉर्ड में बदलाव किया जा सकता है.
खास जानकारी
किसी उपयोगकर्ता की Google साइट की पुष्टि करने के डेटा में बदलाव करने के लिए, Google Site Verification API का इस्तेमाल किया जा सकता है. उपयोगकर्ता सिर्फ़ ये काम कर सकते हैं Google की कुछ सेवाओं को ऐक्सेस करना. ऐसा तब करना होगा, जब पुष्टि के डेटा से पता चलता हो कि वे किसी खास वेबसाइट डोमेन के लिए. इस एपीआई का इस्तेमाल करके, पुष्टि के लिए टोकन जनरेट किए जा सकते हैं जिसे आपका कोड, आपकी वेबसाइट या डोमेन के रिकॉर्ड पर कई तरीकों से अपने की ओर से. टोकन जगह पर आ जाने के बाद, एपीआई को कॉल करके Google से टोकन. अगर Google को टोकन मिलता है, तो वह पुष्टि किए गए उपयोगकर्ता को वेबसाइट के मालिक के तौर पर रजिस्टर करता है या डोमेन. एपीआई का इस्तेमाल करके, उपयोगकर्ता की ओर से मालिकाना हक की सूची में बदलाव किया जा सकता है या साइट का मालिकाना हक पूरी तरह से हटा सकता है.
सभी एपीआई कॉल को किसी ऐसे उपयोगकर्ता से अनुमति मिलना ज़रूरी है जिसकी पुष्टि हो चुकी है. साथ ही, सभी एपीआई कॉल लागू किए जाते हैं के संदर्भ में है.
आपको इस एपीआई का इस्तेमाल कब करना चाहिए, इसका एक अच्छा उदाहरण यह है कि मान लें कि आपका कारोबार वेब होस्टिंग की सेवा उपलब्ध कराता है. आपके उपयोगकर्ता Google के Search Console का इस्तेमाल करना चाहते हैं उनकी साइट के बारे में जानकारी पाने के लिए. ऐसा करने के लिए, Google को यह पता होना चाहिए कि अपना डेटा असल में बरकरार है. इस तरह, आप अपने उपयोगकर्ताओं को ऐसा इंटरफ़ेस उपलब्ध कराते हैं जिसमें उनसे उनकी पहचान की पुष्टि करने के लिए कहा जाता है. साइट का मालिकाना हक. वे आपके ऐप्लिकेशन को उसके पुष्टि करने वाले डेटा का ऐक्सेस देते हैं और यह अब ऐसे कोड को एक्ज़ीक्यूट करता है जो उनकी तरफ़ से टोकन का अनुरोध करता है और उसे अपनी साइट पर मौजूद फ़ाइल में रखता है और Google को इसकी जांच करने के लिए कहता है. जब Google को टोकन मिलता है, तो वह इसका मालिकाना हक देता है उपयोगकर्ता को उनकी पुष्टि करने के लिए भेजा गया डेटा अपडेट करके साइट को ऐक्सेस कर सकते हैं. वे अब इन सुविधाओं के लिए Search Console का इस्तेमाल कर सकते हैं जानकारी होती है जो वे चाहते हैं.
शुरू करने से पहले
कोई Google खाता प्राप्त करें
यह पक्का करें कि आपने Google खाता सेट अप किया हो. हमारा सुझाव है कि डेवलपमेंट और टेस्टिंग के लिए, एक अलग Google खाते का इस्तेमाल करें. इससे आपको डेटा के गलती से होने वाले नुकसान से बचाने में मदद मिलेगी.
साइट की पुष्टि के बारे में जानें
अगर आपको 'Google साइट पुष्टि' एपीआई के सिद्धांतों के बारे में जानकारी नहीं है, तो आपको यह दस्तावेज़ पढ़ना चाहिए और पुष्टि के लिए यूज़र इंटरफ़ेस के साथ एक्सपेरिमेंट करना चाहिए. साथ ही, कोड का इस्तेमाल शुरू करने से पहले, इससे जुड़े सहायता दस्तावेज़ को भी पढ़ना चाहिए.
अनुरोधों को अनुमति देने का तरीका जानें
आपका ऐप्लिकेशन, Google Site Verification API को जो भी अनुरोध भेजता है उसमें अनुमति वाला टोकन होना चाहिए. इस टोकन से Google आपके ऐप्लिकेशन की पहचान भी करता है.
अनुमति देने के प्रोटोकॉल के बारे में जानकारी
अनुरोधों को अनुमति देने के लिए, आपके ऐप्लिकेशन में OAuth 2.0 का इस्तेमाल किया जाना चाहिए. अनुमति देने वाले दूसरे प्रोटोकॉल इस्तेमाल नहीं किए जा सकते. अगर आपका ऐप्लिकेशन Google से साइन इन करने की सुविधा इस्तेमाल करता है, तो अनुमति देने से जुड़े कुछ पहलुओं को Google आपके लिए खुद मैनेज करता है.
OAuth 2.0 से अनुरोधों को अनुमति देना
Google Site Verification API को भेजे जाने वाले सभी अनुरोधों की अनुमति किसी ऐसे उपयोगकर्ता से होनी चाहिए जिसके पास पुष्टि हो.
OAuth 2.0 के लिए अनुमति देने की प्रक्रिया या "तरीका" अलग-अलग हो सकता है. यह इस बात पर निर्भर करता है कि ऐप्लिकेशन किस तरह का है. सभी तरह के ऐप्लिकेशन के लिए नीचे दी गई सामान्य प्रक्रिया लागू होती है:
- ऐप्लिकेशन बनाने के बाद, उसे Google API (एपीआई) कंसोल का इस्तेमाल करके, रजिस्टर किया जाता है. इसके बाद, Google आपको क्लाइंट आईडी और क्लाइंट सीक्रेट जैसी जानकारी देगा.
- Google API कंसोल में, Google Site Verification API को चालू करें. (अगर एपीआई को 'API कंसोल' की सूची में नहीं जोड़ा गया है, तो यह चरण छोड़ दें.)
- जब आपके ऐप्लिकेशन को उपयोगकर्ता के डेटा को ऐक्सेस करने की ज़रूरत होती है, तब वह Google से, डेटा के खास लिंक का अनुरोध करता है.
- Google, उपयोगकर्ता को सहमति वाली स्क्रीन दिखाता है, जिसमें उनसे आपके ऐप्लिकेशन को उनके कुछ डेटा को ऐक्सेस करने की अनुमति मांगी जाती है.
- अगर उपयोगकर्ता इसकी अनुमति दे देता है, तो Google आपके ऐप्लिकेशन को कुछ समय के लिए इस्तेमाल किए जा सकने वाला ऐक्सेस टोकन देता है.
- आपका ऐप्लिकेशन, ऐक्सेस टोकन से उपयोगकर्ता के डेटा को ऐक्सेस करने का अनुरोध करता है.
- अगर Google को पता चलता है कि आपका अनुरोध और टोकन मान्य है, तो वह आपके ऐप्लिकेशन को अनुरोध किए गए डेटा का ऐक्सेस दे देता है.
कुछ तरीकों में दूसरे चरण भी शामिल हो सकते हैं, जैसे कि रिफ़्रेश टोकन इस्तेमाल करके, नया ऐक्सेस टोकन पाना. अलग-अलग तरह के ऐप्लिकेशन के लिए डेटा ऐक्सेस करने के तरीकों के बारे में ज़्यादा जानकारी पाने के लिए, Google का OAuth 2.0 दस्तावेज़ पढ़ें.
यहां Google Site Verification API के लिए OAuth 2.0 के दायरे की जानकारी दी गई है:
दायरा | मतलब |
---|---|
https://www.googleapis.com/auth/siteverification |
पुष्टि की गई मौजूदा साइटों के लिए पूरा पढ़ने का ऐक्सेस, नई साइटों की पुष्टि करने की सुविधा. |
https://www.googleapis.com/auth/siteverification.verify_only |
नई साइटों की पुष्टि करने की सुविधा, पुष्टि की गई मौजूदा साइटों के लिए पढ़ने का ऐक्सेस नहीं. |
OAuth 2.0 का इस्तेमाल करके, डेटा ऐक्सेस करने का अनुरोध करने के लिए, आपके ऐप्लिकेशन को अनुरोध के तरीके की जानकारी देनी होगी. साथ ही, वह जानकारी भी देनी होगी जो आपको ऐप्लिकेशन रजिस्टर करते समय, Google से मिली थी, जैसे कि क्लाइंट आईडी और क्लाइंट सीक्रेट.
सलाह: Google API की क्लाइंट लाइब्रेरी आपके लिए अनुमति देने की कुछ प्रक्रियाएं खुद कर सकती है. ये लाइब्रेरी कई प्रोग्रामिंग भाषाओं के लिए उपलब्ध होती हैं. ज़्यादा जानकारी के लिए लाइब्रेरी और नमूनों वाला पेज देखें.
Google Site Verification API का बैकग्राउंड
कॉन्सेप्ट
नीचे दिए गए वेब संसाधनों के लिए, उपयोगकर्ता के मालिकाना हक की पुष्टि करने के लिए, Google Site Verification API का इस्तेमाल किया जा सकता है:
- डोमेन: कोई डोमेन या सबडोमेन. डोमेन के मालिक को
उस डोमेन की सभी साइटों और सबडोमेन का मालिक होगा. उदाहरण के लिए,
bar.com
के डायरेक्ट मालिक उन्हेंfoo.bar.com
का अप्रत्यक्ष मालिक भी माना जाता है. - साइट: किसी वेबसाइट के बेस डोमेन और पाथ से जुड़ा यूआरएल. किसी साइट के मालिक को उसके तहत आने वाली सभी साइटों का मालिक माना जाता है. उदाहरण के लिए, “http://www.example.com/site” के मालिक को “http://www.example.com/site/subsite” का मालिक भी माना जाता है.
साइट के मालिकाना हक की तुलना में डोमेन का मालिकाना हक ज़्यादा बड़े पैमाने पर लागू होता है. इसलिए, हमारा सुझाव है कि जहां भी संभव हो आप डोमेन का इस्तेमाल करके पुष्टि करें.
मालिकाना हक तय करने की प्रक्रिया तब शुरू होती है, जब आपका आवेदन उपयोगकर्ता की ओर से "पुष्टि के लिए टोकन" का अनुरोध करता है. पुष्टि टोकन एक खास स्ट्रिंग है. इसके बाद, आपको कोड को अपनी वेबसाइट या डोमेन पर डालना होगा. टोकन उपलब्ध होने के बाद, आपका ऐप्लिकेशन Google Site Verification API को अनुरोध भेज सकता है. यह टोकन मिलने पर, वह टोकन की जांच करता है और मालिकाना हक रिकॉर्ड करता है.
सीमाएं
सुरक्षा और तकनीकी वजहों से, Google Site Verification API इसके इस्तेमाल के तरीके पर कुछ पाबंदियां लागू करता है:
- सिर्फ़ पुष्टि किए गए उपयोगकर्ता के लिए डेटा ऐक्सेस: सभी कार्रवाइयों के लिए, उपयोगकर्ता की पुष्टि और अनुमति ज़रूरी है.
- सिर्फ़ पुष्टि किए गए उपयोगकर्ता के लिए पुष्टि करना: एपीआई सिर्फ़ मौजूदा समय में पुष्टि किए गए खाते के लिए साइटों या डोमेन के मालिकाना हक की पुष्टि कर सकता है. हालांकि, किसी साइट पर अपने मालिकाना हक की पुष्टि हो जाने के बाद, वह उपयोगकर्ता दूसरे उपयोगकर्ताओं को मालिकाना हक सौंप सकता है. ध्यान दें कि जब भी मालिकाना हक की सूची में बदलाव किए जाते हैं, तो सभी मालिकों को ईमेल से इसकी सूचना दी जाती है.
- सिर्फ़ सामान्य यूआरएल और डोमेन नेम. Google Site Verification API, IDN (इंटरनैशनल डोमेन नेम) एन्कोडिंग पर काम नहीं करती है. अगर ज़रूरी हो, तो Puycoding का इस्तेमाल करके सभी यूआरएल, डोमेन नेम, और ईमेल पते के डोमेन को स्टैंडर्ड डोमेन नेम कैरेक्टर सेट (आरएफ़सी 1034 §3.5) में नॉर्मलाइज़ करना न भूलें.
पुष्टि करने के तरीके और टोकन
एपीआई, पुष्टि करने के अलग-अलग चरणों के लिए कॉल की सुविधा देता है:
- पुष्टि टोकन डालना: पुष्टि टोकन फिर से पाने के लिए एक एपीआई कॉल होता है, ताकि उसे पुष्टि किए गए उपयोगकर्ता की साइट पर लगाया जा सके. अगर किसी उपयोगकर्ता के पास एक से ज़्यादा साइटें हैं, तो आपको हर साइट के लिए अलग टोकन हासिल करना होगा.
- पुष्टि वाले टोकन की मौजूदगी की जांच करना: एक अलग एपीआई कॉल होता है. इसका इस्तेमाल करके यह अनुरोध किया जाता है कि Google, टोकन की जांच करके इस बात की पुष्टि कर सके कि पुष्टि किए गए उपयोगकर्ता के पास साइट का मालिकाना हक है या नहीं.
किसी वेबसाइट या डोमेन की पुष्टि करने के कई तरीके हैं, जिनका इस्तेमाल आपका ऐप्लिकेशन कर सकता है; आप जिस विकल्प को चुनते हैं वह इस बात पर निर्भर करता है कि आपकी ज़रूरतों के हिसाब से कौनसा तरीका सबसे सही है. टोकन कहां रखना है और टोकन किस तरह का है, यह इस बात पर निर्भर करता है कि आपने पुष्टि करने के लिए कौनसा तरीका चुना है.
डोमेन सत् यापन विधि
डोमेन की पुष्टि करने के दो तरीके उपलब्ध हैं:
- DNS_CNAME
-
आपका ऐप्लिकेशन, रिकॉर्ड डेटा के टोकन का इस्तेमाल करके, मालिक के डोमेन के लिए, शायद उनके डोमेन रजिस्ट्रार के ज़रिए, एक नया CNAME रिकॉर्ड बनाता है. टोकन, स्पेस से अलग किए गए दो हिस्सों से मिलकर बना होता है: पहला हिस्सा नए CNAME रिकॉर्ड का नाम होता है, दूसरा हिस्सा नए CNAME रिकॉर्ड की वैल्यू होता है.
- DNS_TXT
-
आपका ऐप्लिकेशन, रिकॉर्ड डेटा के टोकन का इस्तेमाल करके, मालिक के डोमेन के लिए एक नया TXT रिकॉर्ड बनाता है. यह रिकॉर्ड शायद उनके डोमेन रजिस्ट्रार के ज़रिए बनाया जाता है.
ज़्यादा जानकारी के लिए, डीएनएस से पुष्टि करने के तरीके के बारे में जानने के लिए, सहायता केंद्र के दस्तावेज़ देखें.
साइट की पुष्टि करने के तरीके
साइटों के लिए, पुष्टि करने के तीन तरीके उपलब्ध हैं:
- फ़ाइल
- आपका ऐप्लिकेशन, मालिक की वेबसाइट पर फ़ाइल के रूप में टोकन को रखता है. आपको नीचे दिए गए कॉन्टेंट के साथ, टोकन स्ट्रिंग से मेल खाने वाली एक फ़ाइल बनानी होगी:
google-site-verification: token
उदाहरण के लिए, अगर कोई उपयोगकर्ता http://www.example.com/ साइट का मालिक है और लौटाया गया टोकन
google12cfc68677988bb4.html
है, तो आपको बस http://www.example.com/google12cfc68677988bb4.html (उनकी साइट के शीर्ष स्तर पर) पर यह सामग्री बनानी होगी:google-site-verification: google12cfc8677988bb4.html
ज़्यादा जानकारी के लिए, फ़ाइल की पुष्टि करने के तरीके के बारे में जानने के लिए, सहायता केंद्र का दस्तावेज़ देखें.
- Meta
-
आपका ऐप्लिकेशन, मालिक की साइट के ऊपरी स्तर पर डिफ़ॉल्ट फ़ाइल के
<head>
एलिमेंट (index.html, default.html वगैरह) में, एचटीएमएल<meta>
टैग के तौर पर टोकन शामिल करता है. Meta पुष्टि टोकन वाली एचटीएमएल फ़ाइल, कुछ ऐसी दिख सकती है:<html> <head> <title>Awesome Dive Sites</title> <meta name="google-site-verification" content="-dhsoFQadgDKJR7BsB6bc1j5yfqjUpg_b-1pFjr7o3x" /> </head> <body> ...
ज़्यादा जानकारी के लिए, मेटा पुष्टि के तरीके के बारे में जानने के लिए, सहायता केंद्र का दस्तावेज़ देखें.
- Analytics
-
आपका ऐप्लिकेशन ऐसे मौजूदा Google Analytics ट्रैकिंग कोड का इस्तेमाल कर रहा है, जो पहले से ही मालिक की वेबसाइट पर मौजूद है. ट्रैकिंग कोड उनके Analytics खाते से संबंधित होना चाहिए और स्निपेट काम कर सके इसके लिए वह HEAD टैग में मौजूद होना चाहिए. ज़्यादा जानकारी के लिए, Analytics में पुष्टि करने के तरीके के बारे में जानने के लिए, सहायता केंद्र का दस्तावेज़ पढ़ें.
- Tag Manager
-
आपका ऐप्लिकेशन ऐसे मौजूदा Google Tag Manager कंटेनर कोड का इस्तेमाल कर रहा है जो पहले से ही मालिक की वेबसाइट पर मौजूद है. कंटेनर कोड उनके Tag Manager खाते से जुड़ा होना चाहिए. ज़्यादा जानकारी के लिए, Tag Manager की पुष्टि करने के तरीके के बारे में जानने के लिए, सहायता केंद्र का दस्तावेज़ देखें.
साइट की पुष्टि करने वाले यूज़र इंटरफ़ेस की मदद से, कुछ साइटों की मैन्युअल तरीके से पुष्टि करने पर, इससे आपको मुख्य सिद्धांतों और वर्कफ़्लो को समझने में मदद मिल सकती है.
डेटा मॉडल
वेब पर मौजूद संसाधन
Google Site Verification API, वेब रिसॉर्स नाम की इकाइयों पर REST सिमैंटिक (एचटीटीपी GET
, POST
वगैरह) लागू करता है. वेब रिसॉर्स, किसी पुष्टि किए गए उपयोगकर्ता की वेबसाइट या डोमेन होता है.
यहां वेब रिसॉर्स का एक उदाहरण दिया गया है:
{ "owners": [ "myself@example.com", "another@example.com" ], "id": "http%3A%2F%2Fwww.example.com%2F", "site": { "identifier": "http://www.example.com/", "type": "SITE" } }
id
फ़ील्ड, इस वेब रिसॉर्स का यूनीक आइडेंटिफ़ायर है. इसका इस्तेमाल, इस खास वेब रिसॉर्स को फिर से पाने और उसमें बदलाव करने के लिए किया जा सकता है. list ऑपरेशन के आउटपुट से id
फ़ील्ड को सेव करें, ताकि उसे बाद में आइडेंटिफ़ायर के तौर पर इस्तेमाल किया जा सके.
site
ऑब्जेक्ट में, वेब संसाधन का यूआरएल या डोमेन नेम होता है. साथ ही, संसाधन का टाइप भी होता है. साइटें SITE
टाइप की मदद से बताई गई हैं; डोमेन प्रकार INET_DOMAIN
से दर्ज किए जाते हैं.
owners
कलेक्शन, वेब रिसॉर्स के मालिकों की पूरी सूची है. इसे उनके ईमेल पतों से दिखाया जाता है. मालिकों की सूची में ईमेल पते जोड़कर या हटाकर, पुष्टि किया गया उपयोगकर्ता दूसरे उपयोगकर्ताओं को सह-मालिकाना हक दे सकता है या मालिकाना हक वापस ले सकता है. जिन अतिरिक्त मालिकों ने साइट या डोमेन पर अपने टोकन डाले हैं वे अपने सह-मालिकों के साथ, मालिकों की सूची में भी दिखते हैं.
जिन उपयोगकर्ताओं को सह-मालिकाना हक दिया गया है वे भी सह-मालिकाना हक दे सकते हैं. हालांकि, इसके लिए ज़रूरी है कि साइट पर कम से कम एक ऐसा मालिक हो जिसके मालिकाना हक की पुष्टि हो चुकी हो.
वेब रिसॉर्स कलेक्शन
वेब रिसॉर्स कलेक्शन, उन सभी वेब संसाधनों की पूरी सूची होती है जो पुष्टि किए गए उपयोगकर्ता से जुड़े होते हैं. पुष्टि किए गए उपयोगकर्ता के वेब रिसॉर्स कलेक्शन में नए वेब रिसॉर्स जोड़ने की कोशिश करके, साइटों या डोमेन के मालिकाना हक की पुष्टि की जा सकती है. सिर्फ़ पुष्टि की गई साइटें या डोमेन ही अपने कलेक्शन में जोड़े जाते हैं.
जैसा कि पहले सीमाएं सेक्शन में बताया गया है, पुष्टि किए गए उपयोगकर्ता के अलावा किसी और उपयोगकर्ता के वेब रिसॉर्स को साइट पुष्टि एपीआई के ज़रिए ऐक्सेस नहीं किया जा सकता.