محصولات «پلاتفرم Google Maps» با محدود کردن فراخوانیهای میانای برنامهسازی کاربردی به مواردی که اعتبارنامههای اصالتسنجی مناسب ارائه میدهند، دربرابر استفاده غیرمجاز ایمن هستند. این اعتبارنامهها بهشکل کلید میانای برنامهسازی کاربردی هستند که رشته الفبایی-عددی منحصربهفردی است که حساب صورتحساب Google شما را با پروژهتان و با میانای برنامهسازی کاربردی یا کیت توسعه نرمافزار خاصی مرتبط میکند.
با نحوه ایجاد، محدود کردن، و استفاده از کلید میانای برنامهسازی کاربردی برای «پلاتفرم Google Maps» آشنا شوید.
قبلاز شروع
قبلاز شروع استفاده از Directions API (Legacy)، به پروژهای با حساب صورتحساب و Directions API (Legacy) فعال نیاز دارید. برای کسب اطلاعات بیشتر، به راهاندازی در کنسول Cloud مراجعه کنید.
ایجاد کلیدهای میانای برنامهسازی کاربردی
کلید میانای برنامهسازی کاربردی شناسه یکتایی است که درخواستهای مرتبط با پروژه شما را برای اهداف استفاده و صدور صورتحساب اصالتسنجی میکند. باید حداقل یک کلید میانای برنامهسازی کاربردی مرتبط با پروژهتان داشته باشید.
برای ایجاد کلید میانای API:
کنسول
-
به صفحه پلاتفرم Google Maps > اطلاعات کاربری بروید.
-
در صفحه اعتبارنامهها، روی ایجاد اعتبارنامه > کلید میانای برنامهسازی کاربردی کلیک کنید.
کادر گفتگوی کلید میانای API ایجاد شد کلید میانای API جدیداً ایجادشده را نمایش میدهد. -
روی بستن کلیک کنید.
کلید میانای API جدید در صفحه اطلاعات کاربری در بخش کلیدهای میانای API فهرست شده است.
(بهخاطر داشته باشید که قبلاز استفاده از کلید میانای API در تولید، آن را محدود کنید.)
کیت توسعه نرمافزار Cloud
gcloud services api-keys create \ --project "PROJECT" \ --display-name "DISPLAY_NAME"
درباره کیت توسعه نرمافزار Google Cloud ، نصب کیت توسعه نرمافزار Cloud ، و فرمانهای زیر بیشتر بخوانید:
محدود کردن کلیدهای میانای برنامهسازی کاربردی
Google قویاً توصیه میکند که کلیدهای میانای API خود را با محدود کردن استفاده از آنها فقط به آن دسته از میاناهای برنامهسازی کاربردی که برای برنامهتان لازم است محدود کنید. محدود کردن کلیدهای میانای API با محافظت از برنامه شما دربرابر درخواستهای غیرمجاز، امنیت آن را افزایش میدهد. مسئولیت مالی هزینههای ناشی از سوءاستفاده از کلیدهای میانای API نامحدود برعهده شما است. برای اطلاعات بیشتر، روالهای مطلوب امنیتی API را ببینید.
برای محدود کردن کلید میانای API:
کنسول
-
به صفحه پلاتفرم Google Maps > اطلاعات کاربری بروید.
- کلید میانای API (کلید میانای برنامهسازی کاربردی) را که میخواهید برای آن محدودیت تنظیم کنید انتخاب کنید. صفحه ویژگی کلید میانای API (کلید میانای برنامهسازی کاربردی) ظاهر میشود.
- در بخش محدودیتهای کلید، محدودیتهای زیر را تنظیم کنید:
- محدودیتهای برنامه:
- برای پذیرفتن درخواستها از فهرست نشانیهای IP سرور وب که ارائه میدهید، نشانیهای IP (سرورهای وب، cron jobs، و غیره) را از فهرست محدودیتهای برنامه انتخاب کنید. یک یا چند نشانی IPv4 یا IPv6، یا زیرشبکه را بااستفاده از نماد CIDR مشخص کنید. نشانیهای IP باید با نشانی منبعی که سرورهای «پلاتفرم Google Maps» مشاهده میکنند مطابقت داشته باشد. اگر از ترجمه نشانی شبکه (NAT) استفاده میکنید، این نشانی معمولاً با نشانی IP عمومی دستگاه شما مطابقت دارد.
- محدودیتهای میانای برنامهسازی کاربردی:
- روی محدود کردن کلید کلیک کنید.
- Directions API (Legacy) را از منو کرکرهای انتخاب میاناهای برنامهسازی کاربردی انتخاب کنید. اگر Directions API (Legacy) در فهرست نیست، باید آن را فعال کنید.
- برای نهایی کردن تغییرات، روی ذخیره کلیک کنید.
کیت توسعه نرمافزار Cloud
کلیدهای موجود را فهرست کنید.
gcloud services api-keys list --project="PROJECT"
محدودیتهای موجود در کلید موجود را پاک کنید.
gcloud services api-keys update "projects/PROJECT/keys/KEY_ID" \ --clear-restrictions
محدودیتهای جدیدی برای کلید موجود تنظیم کنید.
gcloud services api-keys update projects/PROJECT/locations/global/keys/KEY_ID \ --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 استفاده کنید.