Distance Matrix API (लेगसी) के साथ एपीआई पासकोड इस्तेमाल करना

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

इस गाइड में, Google Maps Platform के लिए एपीआई पासकोड बनाने, उस पर पाबंदी लगाने, और उसका इस्तेमाल करने का तरीका बताया गया है.

शुरू करने से पहले

Distance Matrix API (लेगसी) का इस्तेमाल शुरू करने से पहले, आपको एक ऐसा प्रोजेक्ट बनाना होगा जिसमें बिलिंग खाता जुड़ा हो और Distance Matrix API (लेगसी) चालू हो. ज़्यादा जानने के लिए, Cloud Console में सेट अप करना लेख पढ़ें.

एपीआई पासकोड बनाना

एपीआई पासकोड एक यूनीक आइडेंटिफ़ायर होता है. यह इस्तेमाल और बिलिंग के मकसद से, आपके प्रोजेक्ट से जुड़े अनुरोधों की पुष्टि करता है. आपके प्रोजेक्ट से कम से कम एक एपीआई पासकोड जुड़ा होना चाहिए. नई कुंजी बनाने या किसी मौजूदा कुंजी में एपीआई या SDK टूल जोड़ने के लिए, यह तरीका अपनाएं.

कंसोल

  1. Google Maps Platform > कुंजियां और क्रेडेंशियल पेज पर जाएं.

    कुंजियां और क्रेडेंशियल पेज पर जाएं

  2. अगर कहा जाए, तो अपना प्रोजेक्ट चुनें.
  3. इनमें से कोई एक काम करें:

    • नई कुंजी बनाना:

      1. क्रेडेंशियल बनाएं > एपीआई पासकोड पर क्लिक करें.
      2. एपीआई पासकोड बनाएं पैनल में, एपीआई से जुड़ी पाबंदियां चुनें सूची खोलें.
      3. उन सभी एपीआई को हटा दें जिनकी इस कुंजी को ज़रूरत नहीं है. साथ ही, पक्का करें कि Distance Matrix API चुना हुआ रहे.
      4. बनाएं पर क्लिक करें. पैनल में आपका नया एपीआई पासकोड दिखता है.
    • किसी मौजूदा कुंजी का इस्तेमाल करना:

      1. कुंजी के नाम पर क्लिक करें.
      2. एपीआई से जुड़ी पाबंदियां चुनें सूची में, Distance Matrix API चुनें.
      3. सेव करें पर क्लिक करें.

    यहां किसी एपीआई को चुनने से वह चालू नहीं होता. पक्का करें कि Distance Matrix API, इसके एपीआई लाइब्रेरी पेज पर चालू हो.

  4. कुंजी की स्ट्रिंग को बाद में देखने के लिए, कुंजियां और क्रेडेंशियल पेज पर जाएं. इसके बाद, कुंजी के लिए कुंजी दिखाएं पर क्लिक करें.

अगर कंसोल इन चरणों से अलग दिखता है, तो Google Cloud के दस्तावेज़ में जाकर, एपीआई पासकोड बनाना और एपीआई से जुड़ी पाबंदियां जोड़ना लेख पढ़ें.

gcloud

यहां दिए गए कमांड में, PROJECT_ID की जगह अपना प्रोजेक्ट आईडी डालें.

  • नई कुंजी बनाएं: यहां दिया गया निर्देश चलाएं और DISPLAY_NAME को कुंजी के नाम से बदलें.

    gcloud services api-keys create \
        --project="PROJECT_ID" \
        --display-name="DISPLAY_NAME" \
        --api-target=service=distance-matrix-backend.googleapis.com

    Google Cloud SDK, Cloud SDK को इंस्टॉल करने, और इन निर्देशों के बारे में ज़्यादा जानें:

  • किसी मौजूदा कुंजी का इस्तेमाल करना: यह कमांड चलाएं और KEY_ID को कुंजी के आईडी से बदलें. --append फ़्लैग, उन एपीआई को बनाए रखता है जिनकी अनुमति कुंजी पहले से देती है. इसके बिना, कमांड उन्हें बदल देता है.

    gcloud services api-keys update KEY_ID \
        --project="PROJECT_ID" \
        --append \
        --api-target=service=distance-matrix-backend.googleapis.com

    Google Cloud SDK, Cloud SDK को इंस्टॉल करने, और इन निर्देशों के बारे में ज़्यादा जानें:

    कुंजी का आईडी, कुंजी की स्ट्रिंग या डिसप्ले नेम नहीं होता. इसे ढूंढने के लिए, gcloud services api-keys list --project="PROJECT_ID" चलाएं. आईडी, name फ़ील्ड का आखिरी हिस्सा होता है: projects/PROJECT_NUMBER/locations/global/keys/KEY_ID.

की स्ट्रिंग देखने के लिए, gcloud services api-keys get-key-string KEY_ID --project="PROJECT_ID" चलाएं.

एपीआई पासकोड पर पाबंदी लगाना

Google का सुझाव है कि आप अपने एपीआई पासकोड पर पाबंदी लगाएं. इसके लिए, उनका इस्तेमाल सिर्फ़ उन एपीआई तक सीमित करें जो आपके ऐप्लिकेशन के लिए ज़रूरी हैं. एपीआई पासकोड पर पाबंदी लगाने से, आपके ऐप्लिकेशन को सुरक्षा मिलती है. इससे ऐप्लिकेशन को बिना अनुमति वाले अनुरोधों से सुरक्षित रखा जा सकता है. बिना पाबंदी वाले एपीआई पासकोड के गलत इस्तेमाल की वजह से लगने वाले शुल्क के लिए, आप ज़िम्मेदार हैं. ज़्यादा जानकारी के लिए, एपीआई की सुरक्षा के सबसे सही तरीके देखें.

किसी एपीआई पासकोड पर पाबंदी लगाने के लिए:

कंसोल

  1. Google Maps Platform > कुंजियां और क्रेडेंशियल पेज पर जाएं.

    कुंजियां और क्रेडेंशियल पेज पर जाएं

  2. वह एपीआई पासकोड चुनें जिस पर आपको पाबंदी लगानी है. इसके बाद, एपीआई पासकोड की प्रॉपर्टी वाला पेज दिखेगा.
  3. मुख्य पाबंदियां में जाकर, ये पाबंदियां सेट करें:
    • ऐप्लिकेशन पर पाबंदियां:
      1. आपके दिए गए वेब सर्वर के आईपी पतों की सूची से अनुरोध स्वीकार करने के लिए, ऐप्लिकेशन से जुड़ी पाबंदियां में जाकर, आईपी पते चुनें. एक या उससे ज़्यादा IPv4 या IPv6 पते डालें या सीआईडीआर नोटेशन का इस्तेमाल करके सबनेट डालें. आईपी पते, उस सोर्स पते से मेल खाने चाहिए जो Google Maps Platform के सर्वर को दिखता है. अगर नेटवर्क अड्रेस ट्रांसलेशन (NAT) का इस्तेमाल किया जाता है, तो आम तौर पर यह आपकी मशीन के सार्वजनिक आईपी पते से मेल खाएगा.
    • एपीआई से जुड़ी पाबंदियां:
      1. एपीआई से जुड़ी पाबंदियां चुनें में जाकर, पक्का करें कि Distance Matrix API चुना गया हो. अगर यह सूची में नहीं है, तो आपको इसे चालू करना होगा.
  4. बदलावों को सेव करने के लिए, सेव करें पर क्लिक करें.

gcloud

यहां दिया गया कमांड चलाएं. KEY_ID की जगह कुंजी का आईडी और PROJECT_ID की जगह अपना प्रोजेक्ट आईडी डालें. कुंजी का आईडी ढूंढने के लिए, gcloud services api-keys list --project="PROJECT_ID" चलाएं. यह आईडी, name फ़ील्ड का आखिरी हिस्सा होता है.

gcloud services api-keys update KEY_ID \
    --project="PROJECT_ID" \
    --append \
    --api-target=service=distance-matrix-backend.googleapis.com \
    --allowed-ips="IP_ADDRESS"

Google Cloud SDK, Cloud SDK को इंस्टॉल करने, और इन निर्देशों के बारे में ज़्यादा जानें:

अपने अनुरोध में एपीआई पासकोड जोड़ना

Distance Matrix API (लेगसी) के हर अनुरोध के साथ, आपको एक एपीआई पासकोड शामिल करना होगा. यहां दिए गए उदाहरण में, YOUR_API_KEY की जगह अपना एपीआई पासकोड डालें:

https://maps.googleapis.com/maps/api/distancematrix/json?origins=Seattle&destinations=San+Francisco&key=YOUR_API_KEY

एपीआई पासकोड का इस्तेमाल करने वाले अनुरोधों के लिए, एचटीटीपीएस का इस्तेमाल करना ज़रूरी है.