استفاده از کلیدهای میانای برنامه‌سازی کاربردی با Directions API (قدیمی)

محصولات «پلاتفرم Google Maps» با محدود کردن فراخوانی‌های میانای برنامه‌سازی کاربردی به مواردی که اعتبارنامه‌های اصالت‌سنجی مناسب ارائه می‌دهند، دربرابر استفاده غیرمجاز ایمن هستند. این اعتبارنامه‌ها به‌شکل کلید میانای برنامه‌سازی کاربردی هستند که رشته الفبایی-عددی منحصربه‌فردی است که حساب صورت‌حساب Google شما را با پروژه‌تان و با میانای برنامه‌سازی کاربردی یا کیت توسعه نرم‌افزار خاصی مرتبط می‌کند.

با نحوه ایجاد، محدود کردن، و استفاده از کلید میانای برنامه‌سازی کاربردی برای «پلاتفرم Google Maps» آشنا شوید.

قبل‌از شروع

قبل‌از شروع استفاده از Directions API (Legacy)، به پروژه‌ای با حساب صورت‌حساب و Directions API (Legacy) فعال نیاز دارید. برای کسب اطلاعات بیشتر، به راه‌اندازی در کنسول Cloud مراجعه کنید.

ایجاد کلیدهای میانای برنامه‌سازی کاربردی

کلید میانای برنامه‌سازی کاربردی شناسه یکتایی است که درخواست‌های مرتبط با پروژه شما را برای اهداف استفاده و صدور صورت‌حساب اصالت‌سنجی می‌کند. باید حداقل یک کلید میانای API مرتبط با پروژه‌تان داشته باشید. برای ایجاد کلید جدید یا افزودن میانای برنامه‌سازی کاربردی یا کیت توسعه نرم‌افزار به کلید موجود، این دستورالعمل‌ها را دنبال کنید.

کنسول

  1. به صفحه پلاتفرم Google Maps > کلیدها و اطلاعات کاربری بروید.

    به صفحه «کلیدها و اعتبارنامه‌ها» بروید

  2. اگر درخواست شد، پروژه‌تان را انتخاب کنید.
  3. یکی از موارد زیر را انجام دهید:

    • ایجاد کلید جدید:

      1. روی ایجاد اطلاعات کاربری > کلید میانای API کلیک کنید.
      2. در پانل ایجاد کلید میانای API، فهرست انتخاب محدودیت‌های میانای API را باز کنید.
      3. هر میانای برنامه‌سازی کاربردی را که این کلید به آن نیاز ندارد پاک کنید و مطمئن شوید Directions API همچنان انتخاب شده باشد.
      4. روی ایجاد کردن کلیک کنید. پانل کلید میانای برنامه‌سازی کاربردی جدیدتان را نمایش می‌دهد.
    • استفاده از کلید موجود:

      1. روی نام کلید کلیک کنید.
      2. در فهرست انتخاب محدودیت‌های میانای برنامه‌سازی کاربردی، Directions API را انتخاب کنید.
      3. روی ذخیره کلیک کنید.

    انتخاب کردن میانای برنامه‌سازی کاربردی در اینجا آن را فعال نمی‌کند. مطمئن شوید Directions API در صفحه کتابخانه میانای برنامه‌سازی کاربردی آن فعال باشد.

  4. برای دیدن رشته کلید در آینده، به صفحه کلیدها و اطلاعات کاربری بروید و روی نمایش کلید برای کلید کلیک کنید.

اگر کنسول با این مراحل متفاوت است، ایجاد کلید میانای برنامه‌سازی کاربردی و افزودن محدودیت‌های کلید میانای برنامه‌سازی کاربردی را در اسناد Google Cloud ببینید.

gcloud

در فرمان‌های زیر، PROJECT_ID را با شناسه پروژه‌تان جایگزین کنید.

  • ایجاد کلید جدید: فرمان زیر را اجرا کنید و DISPLAY_NAME را با نامی برای کلید جایگزین کنید.

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

    درباره کیت توسعه نرم‌افزار Google Cloud، نصب کیت توسعه نرم‌افزار Cloud، و فرمان‌های زیر بیشتر بخوانید:

  • استفاده از کلید موجود: فرمان زیر را اجرا کنید و KEY_ID را با شناسه کلید جایگزین کنید. پرچم --append میاناهای برنامه‌سازی کاربردی را که کلید ازقبل مجاز کرده است حفظ می‌کند. بدون آن، فرمان جایگزین آن‌ها می‌شود.

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

    درباره کیت توسعه نرم‌افزار Google Cloud، نصب کیت توسعه نرم‌افزار Cloud، و فرمان‌های زیر بیشتر بخوانید:

    شناسه کلید، رشته کلید یا نام نمایشی نیست. برای پیدا کردن آن، 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 قویاً توصیه می‌کند که کلیدهای میانای API خود را با محدود کردن استفاده از آن‌ها فقط به میاناهای API موردنیاز برای برنامه‌تان محدود کنید. محدود کردن کلیدهای میانای API با محافظت از برنامه دربرابر درخواست‌های غیرمجاز، امنیت آن را افزایش می‌دهد. مسئولیت مالی هزینه‌های ناشی از سوءاستفاده از کلیدهای میانای API نامحدود برعهده شما است. برای اطلاعات بیشتر، روال‌های مطلوب امنیتی API را ببینید.

برای محدود کردن کلید میانای برنامه‌سازی کاربردی:

کنسول

  1. به صفحه پلاتفرم Google Maps > کلیدها و اطلاعات کاربری بروید.

    به صفحه «کلیدها و اطلاعات کاربری» بروید

  2. کلید میانای API (کلید میانای برنامه‌سازی کاربردی) موردنظرتان را برای تنظیم محدودیت انتخاب کنید. صفحه ویژگی کلید میانای API (کلید میانای برنامه‌سازی کاربردی) ظاهر می‌شود.
  3. در بخش محدودیت‌های کلید، محدودیت‌های زیر را تنظیم کنید:
    • محدودیت‌های برنامه:
      1. برای پذیرفتن درخواست‌ها از فهرست نشانی‌های IP سرور وب که ارائه می‌دهید، نشانی‌های IP را در بخش محدودیت‌های برنامه انتخاب کنید. یک یا چند نشانی IPv4 یا IPv6، یا زیرشبکه را بااستفاده از نماد CIDR مشخص کنید. نشانی‌های IP باید با نشانی منبعی که سرورهای «پلاتفرم Google Maps» مشاهده می‌کنند مطابقت داشته باشد. اگر از ترجمه نشانی شبکه (NAT) استفاده می‌کنید، این نشانی معمولاً با نشانی IP عمومی دستگاه شما مطابقت دارد.
    • محدودیت‌های میانای برنامه‌سازی کاربردی:
      1. در انتخاب محدودیت‌های میانای برنامه‌سازی کاربردی، مطمئن شوید میانای برنامه‌سازی کاربردی Directions انتخاب شده باشد. اگر در فهرست نیست، باید آن را فعال کنید.
  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=directions-backend.googleapis.com \
    --allowed-ips="IP_ADDRESS"

درباره کیت توسعه نرم‌افزار Google Cloud، نصب کیت توسعه نرم‌افزار Cloud، و فرمان‌های زیر بیشتر بخوانید:

کلید میانای برنامه‌سازی کاربردی را به درخواستتان اضافه کنید

باید با هر درخواست Directions API (Legacy)، یک کلید میانای برنامه‌سازی کاربردی (API) اضافه کنید. در مثال زیر، YOUR_API_KEY را با کلید میانای API خودتان جایگزین کنید:

https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&key=YOUR_API_KEY

برای درخواست‌هایی که از کلید میانای برنامه‌سازی کاربردی استفاده می‌کنند، باید از HTTPS استفاده کنید.