نمای کلی
به منظور افزایش امنیت و قابلیت اطمینان احراز هویت، شناسههای کلاینت پلتفرم نقشهها از ۲۶ مه ۲۰۲۵ منسوخ شدهاند و پس از ۳۱ مه ۲۰۲۶ دیگر قابل استفاده نیستند.
به جای استفاده از شناسه کلاینت، باید از اعتبارنامههای کلید API برای تأیید اعتبار ترافیک سرویس API نقشههای گوگل خود استفاده کنید. این راهنما به شما نشان میدهد که چگونه از استفاده از شناسههای کلاینت به استفاده از کلیدهای API مهاجرت کنید.
برای شروع، این مراحل را دنبال کنید:
- بررسی میزان استفاده فعلی از شناسه کلاینت
- آمادهسازی کلیدهای API
- بررسی تنظیمات سهمیهبندی
- کد خود را بهروزرسانی کنید
- ترافیک شناسه مشتری خود را رصد کنید
- شناسه کلاینت خود را متوقف کنید
بررسی میزان استفاده فعلی از شناسه کلاینت
قبل از شروع فرآیند مهاجرت، موارد زیر را فهرست کنید:
- سرویسهای پلتفرم نقشه که با شناسه کلاینت خود از آنها استفاده میکنید.
- برنامهها، سایتها یا سیستمهایی که از شناسه کلاینت خود در آنها استفاده میکنید.
گوگل در ماه مه ۲۰۲۵ یک ایمیل اعلان به مشتریان آسیبدیده در مورد منسوخ شدن شناسه مشتری ارسال کرد. میتوانید این اطلاعات را در ایمیل اعلان نیز پیدا کنید.
در کنسول ابری، میتوانید آخرین وضعیت استفاده از شناسه کلاینت خود را در صفحه معیارهای نقشههای گوگل بررسی کنید.
برای مشاهده لیستی از سرویسهای پلتفرم نقشه :
- صفحه معیارها را در کنسول ابری باز کنید.
- میزان مصرف خود را با تنظیمات زیر فیلتر کنید:
- اطلاعات احراز هویت: فقط گزینه "project_number:<numerical identifier>" را انتخاب کنید.
- فیلتر زیر را تنظیم کنید.
- گروهبندی بر اساس: API
برای راهنمایی در مورد برنامهها، سایتها یا سیستمها :
کنسول ابری جزئیات برنامهها، سایتها یا سیستمهای شما را نشان نمیدهد. اما میتوانید نکاتی در مورد منابع ترافیک شناسه کلاینت خود پیدا کنید. این مراحل را دنبال کنید:
- صفحه معیارها را در کنسول ابری باز کنید.
- از منوی کشویی، یک سرویس پلتفرم نقشه انتخاب کنید.
- میزان مصرف خود را با تنظیمات زیر فیلتر کنید:
- اطلاعات احراز هویت: فقط گزینه "project_number:<numerical identifier>" را انتخاب کنید.
- فیلتر زیر را تنظیم کنید.
- گروهبندی بر اساس: پلتفرم یا دامنه
- برای هر سرویس پلتفرم نقشه که نیاز به بررسی ترافیک آن دارید، از مرحله ۲ تکرار کنید.
آمادهسازی کلیدهای API
همه شناسههای کلاینت به یک پروژه Google Cloud مرتبط هستند و استفاده از کلید API از آن پروژه به شما امکان دسترسی به همان ویژگیهایی را میدهد که قبلاً با شناسه کلاینت خود به آنها دسترسی داشتید. توصیه میکنیم برای جلوگیری از مشکلات مربوط به سهمیهبندی یا از دست دادن ویژگیها، به پروژه مرتبط مهاجرت کنید.
- پروژه ابری که شناسه کلاینت شما به آن مرتبط است را پیدا کنید:
- مطمئن شوید که پروژه ابری شما به یک حساب صورتحساب باز متصل است.
- یک کلید API جدید برای انتقال شناسه کلاینت ایجاد کنید .
- شما میتوانید از هر کلید API موجود در پروژه ابری دوباره استفاده کنید.
- شما میتوانید از چندین کلید API از یک پروژه ابری استفاده کنید، برای مثال، برای جداسازی ترافیک برای هر سرویس پلتفرم نقشهها، یا برای جداسازی ترافیک از پلتفرمهای مختلف (مرورگر، برنامه تلفن همراه و غیره). برای بهترین شیوههای مدیریت کلید API به راهنمای امنیتی مراجعه کنید.
کلید API خود را ایمن کنید
برای محافظت از کلید خود در برابر دسترسی غیرمجاز، حتماً کلید API خود را ایمن کنید.
- برای کلید API خود محدودیت برنامه (مثلاً وبسایتها، آدرسهای IP، برنامههای اندروید یا برنامههای iOS) تنظیم کنید.
- محدودیتهای API را برای کلید API خود تنظیم کنید.
برای جزئیات بیشتر، به راهنمای امنیتی پلتفرم نقشههای گوگل مراجعه کنید.
برای Maps JavaScript API، Maps Static API و Street View Static API، میتوانید ارجاعدهندگان مورد اعتماد روی شناسه کلاینت خود را به محدودیتهای کلید API منتقل کنید. میتوانید لیست ارجاعدهندگان مورد اعتماد را در Cloud Console پیدا کنید.
بررسی تنظیمات سهمیهبندی
مطمئن شوید که تنظیمات سهمیهبندی مورد انتظار را در پروژه ابری خود دارید. فقط در صورتی که سرویسهای سمت کلاینت Maps JavaScript API را از یک شناسه کلاینت فراخوانی میکنید، باید این کار را انجام دهید. میتوانید تنظیمات سهمیهبندی خود را در صفحه سهمیهبندیهای Google Maps بررسی و تنظیم کنید.
درباره گزارشهای سهمیهبندی بیشتر بدانید
افزایش سهمیه برای سرویسهای سمت کلاینت API جاوا اسکریپت نقشهها
اگر از سرویسهای زیر در Maps JavaScript API استفاده میکنید، پس از انتقال کلید API، افزایش استفاده از سهمیه را مشاهده خواهید کرد.
پیکربندی سهمیه فعلی و میزان مصرف فعلی خود را بررسی کنید و محدودیتهای سهمیه خود را بر اساس آن تنظیم کنید .
- بررسی کنید که آیا از سرویسهای سمت کلاینت Maps JavaScript API با شناسه کلاینت استفاده میکنید یا خیر.
- صفحه معیارها را در کنسول ابری باز کنید.
- میزان مصرف خود را با تنظیمات زیر فیلتر کنید:
- گروهبندی بر اساس: متد API
- اطلاعات احراز هویت: فقط گزینه "project_number:<numerical identifier>" را انتخاب کنید.
- سپس، فهرستی از نامهای متد به همراه ترافیک آن را در نمودار «ترافیک بر اساس متد API» مشاهده خواهید کرد.
روش API | خدمات سمت کلاینت | سرویس تنظیم سهمیه |
مسیرها.google.directions.Javascript | خدمات مسیر یابی | API مسیرها |
google.routes.DistanceMatrix.Javascript | سرویس ماتریس فاصله | API ماتریس فاصله |
نقشه گوگل.ارتفاع.جاوااسکریپت | خدمات ارتفاع | API ارتفاع |
مکانهای گوگل.جغرافیایی.جاوااسکریپت | سرویس ژئوکدینگ | API کدگذاری جغرافیایی |
google.places.*.Javascript، غیر از google.places.Geocoding.Javascript | کتابخانه مکانها | API مکانها |
- اگر از آن متدهای API استفاده نمیکنید، نیازی نیست نگران تنظیمات سهمیه باشید، زیرا ترافیک شناسه کلاینت شما از قبل سهمیه پروژه شما را مصرف میکند.
- میزان استفاده از سهمیه شناسه مشتری خود را تخمین بزنید
- برای هر یک از سرویسها، جزئیات Per Second و Per Day را بررسی کنید.
- نمودار بر ثانیه: برای محاسبه سهمیه اضافی بر دقیقه، اوج ترافیک را در ۶۰ ضرب کنید.
- نمودار روزانه: اوج ترافیک باید معادل سهمیه اضافی مورد نیاز روزانه باشد.
- سهمیه خود را در سرویسهای مربوط به پلتفرم نقشه تنظیم کنید
- بر اساس نام متدی که در مرحله 1 پیدا کردید، سهمیه (Quota) را روی سرویسهای مربوطه تنظیم کنید.
کد خود را بهروزرسانی کنید
پارامتر کلاینت را با پارامتر کلیدی جایگزین کنید
اعتبارنامههای احراز هویت را در فراخوانیهای خروجی GMP API خود از URL&client={value} به URL&key={value} بهروزرسانی کنید. اگر برنامههای شما از HTTP برای دسترسی به سرویسهای GMP استفاده میکنند، آنها را برای استفاده از HTTPS بهروزرسانی کنید.
پارامتر کانال را برای گزارشگیری بهروزرسانی کنید
شما میتوانید با مشخص کردن پارامتر کانال در درخواستهای API خود، میزان استفاده خود را در هر کانال پیگیری کنید. کلیدهای API فقط از مقادیر عددی برای پارامتر کانال پشتیبانی میکنند. اگر از شناسه کلاینت خود با مقادیر غیر عددی برای پارامتر کانال استفاده میکنید، آن را به مقادیر عددی پشتیبانی شده بهروزرسانی کنید.
برای اطلاعات بیشتر به گزارشدهی پلتفرم نقشههای گوگل مراجعه کنید.
حذف پارامتر امضا برای سرویسهای وب
برای APIهای وب سرویس زیر، پارامتر امضا هنگام دسترسی به آنها با کلید API مورد نیاز نیست. فقط پارامتر امضا را از درخواستهای API خود حذف کنید.
- API مسیرها (قدیمی)
- API ماتریس فاصله (قدیمی)
- API کدگذاری جغرافیایی
- API ارتفاع
- API منطقه زمانی
برای اطلاعات بیشتر به نمای کلی طرح پریمیوم مراجعه کنید.
امضای محرمانه برای APIهای تصاویر
APIهای Maps Static و Street View Static هنوز به پارامتر امضا نیاز دارند. آنها تعداد کمی از درخواستهای بدون امضا را برای اهداف آزمایشی میپذیرند، اما به محض اینکه در محیط عملیاتی شما به آستانهی امضا برسند، شروع به شکست میکنند. رمز امضای خود را از رمز مربوط به شناسهی کلاینت به رمز مربوط به کلید API تغییر دهید. میتوانید از همان الگوریتم امضا استفاده کنید، اما باید از رمز امضای دیگری استفاده کنید. برای کسب اطلاعات بیشتر، به «استفاده از امضای دیجیتال» مراجعه کنید.
ترافیک شناسه مشتری خود را رصد کنید
پس از استقرار، با استفاده از داشبوردهای Cloud Console تأیید کنید که ترافیک شما با موفقیت منتقل شده است. شاهد کاهش ترافیک شناسه کلاینت خود خواهید بود که هنگام گروهبندی بر اساس اعتبارنامه، با فرمت "project_number:123456" در داشبورد نشان داده میشود.
شناسه کلاینت خود را متوقف کنید
ما اکیداً توصیه میکنیم که توسعهدهندگان پس از مهاجرت، شناسههای کلاینت را متوقف کنند. این کار برای محافظت از اعتبارنامههای شما در برابر هرگونه ترافیک ناخواسته و تأیید این است که هرگونه استفاده باقیمانده از شناسه کلاینت شما حیاتی نیست (مثلاً آزمایش، حافظههای پنهان، رباتها و ...) و میتواند بدون ایجاد تأثیر بر کسبوکار، خطاها را بازگرداند. میتوانید شناسه کلاینت خود را در کنسول ابری متوقف کنید. برای جزئیات بیشتر به بررسی اجمالی احراز هویت طرح پریمیوم مراجعه کنید.
عیبیابی
چطور بفهمیم درخواستمون رد میشه یا نه؟
میتوانید آمار خطاهای خود را در نمودارهای کد پاسخ بررسی کنید.
خطای ApiNotActivatedMapError یا REQUEST_DENIED
اگر سرویس را در پروژه ابری خود فعال نکرده باشید، خطای ApiNotActivatedMapError یا REQUEST_DENIED را مشاهده خواهید کرد. برای فعال کردن سرویس ، دستورالعملها را دنبال کنید.
خطای RefererNotAllowedMapError
اگر دامنه منبع شما به کلید API شما اضافه نشده باشد، خطای RefererNotAllowedMapError را مشاهده خواهید کرد. بخش «کلید API خود را ایمن کنید» را بررسی کنید و دامنه خود را به کلید API اضافه کنید.
خطای OverQuotaMapError یا OVER_QUERY_LIMIT
اگر سهمیه پیکربندیشده شما برای پوشش ترافیک شما کافی نباشد، OverQuotaMapError یا OVER_QUERY_LIMIT را مشاهده خواهید کرد. بخش «بررسی تنظیمات سهمیه» را بررسی کنید و سهمیه خود را بر اساس آن تنظیم کنید.
خطای «درخواستهای ارسالی به این API باید از طریق SSL باشد»
اگر پیام خطای زیر را دریافت کردید، درخواستهای API خود را از "http://" به "https://" بهروزرسانی کنید.
{
"error_message" : "Requests to this API must be over SSL. Load the API with
\"https://\" instead of \"http://\".",
"results" : [],
"status" : "REQUEST_DENIED"
}