Authentication

इस दस्तावेज़ में, Ad Manager API में पुष्टि करने का तरीका बताया गया है. आपके इस्तेमाल किए जा रहे इंटरफ़ेस और आपके कोड के चलने के एनवायरमेंट के आधार पर, पुष्टि करने का तरीका अलग-अलग हो सकता है. हालांकि, एपीआई के सभी अनुरोधों में, Ad Manager API के स्कोप वाला ऐक्सेस टोकन शामिल होना चाहिए.

Ad Manager की क्लाइंट लाइब्रेरी, Ad Manager API के स्कोप वाले ऐक्सेस टोकन जनरेट करने के लिए, ऐप्लिकेशन डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करती हैं. इस गाइड में, ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल कॉन्फ़िगर करने का तरीका बताया गया है.

अगर क्लाइंट लाइब्रेरी का इस्तेमाल नहीं किया जा रहा है, तो भी आपको क्रेडेंशियल बनाने होंगे. साथ ही, उनका इस्तेमाल करके अपने अनुरोधों को अनुमति देनी होगी.

पुष्टि करने और अनुमति देने के बारे में ज़्यादा जानने के लिए, OAuth 2.0 का इस्तेमाल करना गाइड देखें.

पुष्टि करने का तरीका तय करना

प्रमाणीकरण का प्रकार ब्यौरा
सेवा खाता अगर आपको किसी व्यक्ति के बजाय, किसी खास खाते के तौर पर पुष्टि करनी है, तो यह विकल्प चुनें.
ज़्यादा जानें.
वेब ऐप्लिकेशन अगर आपको ऐसे किसी उपयोगकर्ता के तौर पर पुष्टि करनी है जिसने आपके ऐप्लिकेशन को Ad Manager का डेटा ऐक्सेस करने की अनुमति दी है, तो यह विकल्प चुनें.
ज़्यादा जानें
लोकल डेवलपमेंट अगर आपको अपने लोकल डेवलपमेंट एनवायरमेंट से, अपने Google खाते या सेवा खाते के तौर पर पुष्टि करनी है, तो यह विकल्प चुनें.

Ad Manager API चालू करना

  1. Google API Console Cloud Project में, Ad Manager API चालू करें.

  2. अगर आपसे कहा जाए, तो कोई प्रोजेक्ट चुनें या नया प्रोजेक्ट बनाएं.

क्रेडेंशियल बनाएं

पुष्टि के तरीके के हिसाब से टैब पर क्लिक करें और क्रेडेंशियल बनाने के लिए, इन निर्देशों का पालन करें:

सेवा खाता

Google Cloud पर

Google Cloud पर चल रहे वर्कलोड की पुष्टि करने के लिए, उस सेवा खाते के क्रेडेंशियल का इस्तेमाल करें जो उस कंप्यूट रिसोर्स से जुड़ा है जहां आपका कोड चल रहा है.

उदाहरण के लिए, किसी सेवा खाते को Compute Engine वर्चुअल मशीन (वीएम) इंस्टेंस, Cloud Run सेवा या Dataflow जॉब से जोड़ा जा सकता है. यह तरीका, Google Cloud के कंप्यूट रिसोर्स पर चलने वाले कोड के लिए, पुष्टि करने का सबसे सही तरीका है.

सेवा खाते को किन संसाधनों से जोड़ा जा सकता है, इस बारे में जानकारी पाने के लिए, सेवा खाते को किसी संसाधन से जोड़ने के बारे में जानकारी देने वाला दस्तावेज़ पढ़ें. इसमें, सेवा खाते को संसाधन से जोड़ने के बारे में भी बताया गया है.

कंपनी की इमारत में मौजूद सर्वर पर या किसी अन्य क्लाउड सेवा पर

Google Cloud के बाहर से पुष्टि करने के लिए, वर्कलोड आइडेंटिटी फ़ेडरेशन का इस्तेमाल करना सबसे सही तरीका है. इसके लिए, आपको क्रेडेंशियल कॉन्फ़िगरेशन फ़ाइल बनानी होगी और GOOGLE_APPLICATION_CREDENTIALS एनवायरमेंट वैरिएबल को सेट करके, उसे इस फ़ाइल की ओर पॉइंट करना होगा. यह तरीका, सेवा खाते की कुंजी बनाने से ज़्यादा सुरक्षित है.

अगर आपको वर्कलोड आइडेंटिटी फ़ेडरेशन कॉन्फ़िगर करने में समस्या आ रही है, तो आपको सेवा खाता बनाना होगा. साथ ही, सेवा खाते के लिए एक कुंजी बनानी होगी:

  1. Google API Console का क्रेडेंशियल पेज खोलें.

  2. क्रेडेंशियल पेज पर, क्रेडेंशियल बनाएं को चुनें. इसके बाद, सेवा खाता को चुनें.

  3. उस सेवा खाते के ईमेल पते पर क्लिक करें जिसके लिए आपको कुंजी बनानी है.

  4. कुंजियां टैब पर क्लिक करें.

  5. कुंजी जोड़ें ड्रॉप-डाउन मेन्यू पर क्लिक करें. इसके बाद, नई कुंजी बनाएं चुनें.

  6. कुंजी का टाइप के तौर पर JSON चुनें. इसके बाद, बनाएं पर क्लिक करें.

  7. एनवायरमेंट वैरिएबल GOOGLE_APPLICATION_CREDENTIALS को JSON फ़ाइल के पाथ पर सेट करें.

Linux या macOS

export GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

Windows

set GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

वेब ऐप्लिकेशन

  1. Google API Console का क्रेडेंशियल पेज खोलें.

  2. अगर कहा जाए, तो वह प्रोजेक्ट चुनें जिसमें आपने Ad Manager API चालू किया है.

  3. क्रेडेंशियल पेज पर, क्रेडेंशियल बनाएं को चुनें. इसके बाद, OAuth क्लाइंट आईडी को चुनें.

  4. ऐप्लिकेशन टाइप के तौर पर वेब ऐप्लिकेशन चुनें.

  5. फ़ॉर्म भरें और बनाएं पर क्लिक करें. PHP, Java, Python, Ruby, और .NET जैसे फ़्रेमवर्क और भाषाओं का इस्तेमाल करने वाले ऐप्लिकेशन को, अनुमति वाले रीडायरेक्ट यूआरआई के बारे में बताना होगा. रीडायरेक्ट यूआरआई ऐसे एंडपॉइंट होते हैं जिन पर OAuth 2.0 सर्वर, जवाब भेज सकता है. इन एंडपॉइंट को Google के मान्य होने के नियमों का पालन करना होगा.

  6. क्रेडेंशियल बनाने के बाद, client_secret.json फ़ाइल डाउनलोड करें. फ़ाइल को किसी ऐसी जगह पर सुरक्षित तरीके से सेव करें जहां से सिर्फ़ आपका ऐप्लिकेशन इसे ऐक्सेस कर सके.

यहां से, OAuth 2.0 ऐक्सेस टोकन पाने का तरीका अपनाएं

लोकल डेवलपमेंट

अपने लोकल एनवायरमेंट में, ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल (एडीसी) सेट अप करें.

Google Cloud CLI इंस्टॉल करें. इसके बाद, इसे शुरू करने के लिए यह कमांड चलाएं:

gcloud init

अपने Google खाते के लिए, स्थानीय पुष्टि करने के क्रेडेंशियल बनाएं और प्रोजेक्ट आईडी को उस प्रोजेक्ट पर सेट करें जहां Ad Manager API चालू है:

gcloud auth application-default login --scopes="https://www.googleapis.com/auth/admanager"
gcloud auth application-default set-quota-project PROJECT_ID

इसके अलावा, सेवा खाते के तौर पर पुष्टि करें. इसके लिए, एनवायरमेंट वैरिएबल GOOGLE_APPLICATION_CREDENTIALS को अपनी कुंजी फ़ाइल के पाथ पर सेट करें.

Linux या macOS

export GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

Windows

set GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH

Ad Manager नेटवर्क को कॉन्फ़िगर करना

सेवा खाता

  1. अपने Ad Manager नेटवर्क पर जाएं.
  2. एडमिन टैब पर क्लिक करें.
  3. पक्का करें कि एपीआई ऐक्सेस चालू हो.
  4. सेवा खाते का उपयोगकर्ता जोड़ें बटन पर क्लिक करें.
  5. सेवा खाते के ईमेल का इस्तेमाल करके फ़ॉर्म भरें. एपीआई इंटिग्रेशन के लिए, सेवा खाते के उपयोगकर्ता को सही भूमिकाओं और टीमों में जोड़ा जाना चाहिए.
  6. सेव करें बटन पर क्लिक करें. आपको एक मैसेज दिखेगा, जिसमें सेवा खाता जोड़ने की पुष्टि की जाएगी.
  7. उपयोगकर्ता टैब पर जाकर, सेवा खाते के मौजूदा उपयोगकर्ताओं को देखें. इसके बाद, सेवा खाता फ़िल्टर पर क्लिक करें.

वेब ऐप्लिकेशन

  1. अपने Ad Manager नेटवर्क पर जाएं.
  2. एडमिन टैब पर क्लिक करें.
  3. पक्का करें कि एपीआई ऐक्सेस चालू हो.

लोकल डेवलपमेंट

  1. अपने Ad Manager नेटवर्क पर जाएं.
  2. एडमिन टैब पर क्लिक करें.
  3. पक्का करें कि एपीआई ऐक्सेस चालू हो.

क्लाइंट लाइब्रेरी के बिना

अगर क्लाइंट लाइब्रेरी का इस्तेमाल नहीं किया जा रहा है, तो हमारा सुझाव है कि पुष्टि करने के लिए OAuth2 लाइब्रेरी का इस्तेमाल करें.

ऐक्सेस टोकन पाने के बारे में ज़्यादा जानकारी के लिए, Google API के साथ OAuth2 का इस्तेमाल करना लेख पढ़ें.

ऐक्सेस टोकन

एपीआई को भेजे जाने वाले अनुरोध में अपना ऐक्सेस टोकन शामिल करें. इसके लिए, access_token क्वेरी पैरामीटर या Authorization एचटीटीपी हेडर Bearer वैल्यू में से किसी एक को शामिल करें. जब भी हो सके, एचटीटीपी हेडर का इस्तेमाल करें. ऐसा इसलिए, क्योंकि क्वेरी स्ट्रिंग, सर्वर लॉग में दिखती हैं.

उदाहरण के लिए:

GET /v1/networks/1234
Host: admanager.googleapis.com
Authorization: Bearer ya29.a0Ad52N3_shYLX
GET https://admanager.googleapis.com/v1/networks/1234?access_token=1/fFAGRNJru1FTz70BzhT3Zg

दायरा

हर ऐक्सेस टोकन, एक या उससे ज़्यादा स्कोप से जुड़ा होता है. स्कोप, संसाधनों और कार्रवाइयों के उस सेट को कंट्रोल करता है जिनकी अनुमति ऐक्सेस टोकन देता है. Ad Manager API के दो स्कोप होते हैं. अगर आपके ऐप्लिकेशन को डेटा लिखने की ज़रूरत नहीं है, तो हमारा सुझाव है कि आप admanager.readonly स्कोप का इस्तेमाल करें.

दायरा अनुमतियां
https://www.googleapis.com/auth/admanager Google Ad Manager पर अपने कैंपेन देखें और मैनेज करें.
https://www.googleapis.com/auth/admanager.readonly Google Ad Manager पर अपने कैंपेन और उनका डेटा देखें.