این راهنما نشان میدهد که چگونه از ایمن بودن برنامه و اعتبارنامههای کاربر خود اطمینان حاصل کنید.
تأیید برنامه OAuth را تکمیل کنید
دامنه OAuth 2.0 برای API تبلیغات گوگل به عنوان یک دامنه محدود طبقهبندی میشود، به این معنی که شما باید قبل از تولید برنامه خود، فرآیند تأیید برنامه OAuth را تکمیل کنید. برای کسب اطلاعات بیشتر، به مستندات Google Identity ، مقاله مرکز راهنما در مورد برنامههای تأیید نشده و مستندات مربوط به تنظیم صفحه رضایت OAuth مراجعه کنید.
اعتبارنامههای برنامه را ایمن کنید
شما باید شناسه کلاینت OAuth 2.0 و رمز کلاینت برنامه خود را ایمن کنید. این اعتبارنامهها به کاربران و گوگل کمک میکنند تا برنامه شما را شناسایی کنند و بنابراین باید با آنها با دقت رفتار شود. شما باید با این اعتبارنامههای برنامه مانند رمزهای عبور رفتار کنید. آنها را با استفاده از مکانیسمهای ناامن مانند ارسال در انجمنهای عمومی، ارسال فایلهای پیکربندی حاوی این اعتبارنامهها در پیوستهای ایمیل، کدگذاری سخت اعتبارنامهها یا ثبت آنها در مخزن کد، به اشتراک نگذارید. توصیه میکنیم در صورت امکان از یک مدیر رمز مانند مدیر رمز Google Cloud یا مدیر رمز AWS استفاده کنید.
اگر اطلاعات محرمانه کلاینت OAuth 2.0 شما لو رفته باشد، میتوانید آنها را ریست کنید . توکن توسعهدهنده نیز قابل ریست شدن است.
توکن توسعهدهنده را ایمن کنید
توکن توسعهدهنده به شما امکان میدهد فراخوانیهای API را به یک حساب کاربری انجام دهید، اما هیچ محدودیتی در مورد اینکه با کدام حسابها میتوان از آن برای انجام فراخوانیها استفاده کرد، ندارد. در نتیجه، یک توکن توسعهدهندهی در معرض خطر میتواند توسط شخص دیگری برای انجام فراخوانیهایی که به برنامهی شما نسبت داده میشوند، استفاده شود. برای جلوگیری از این سناریو، این اقدامات پیشگیرانه را انجام دهید:
با توکن توسعهدهنده خود مانند یک رمز عبور رفتار کنید. آن را با استفاده از مکانیسمهای ناامن مانند ارسال در انجمنهای عمومی یا ارسال فایلهای پیکربندی حاوی توکنهای توسعهدهنده به عنوان پیوست ایمیل به اشتراک نگذارید. توصیه میکنیم در صورت امکان از یک مدیر مخفی مانند Google Cloud Secret manager یا AWS Secret Manager استفاده کنید.
اگر توکن توسعهدهنده شما در معرض خطر قرار گرفته است، باید آن را مجدداً تنظیم کنید.
- وارد حساب کاربری مدیریت تبلیغات گوگل شوید که هنگام درخواست API تبلیغات گوگل از آن استفاده کردهاید.
- به ابزارها و تنظیمات > مرکز API بروید.
- روی فلش کشویی کنار «نشانی توسعهدهنده» کلیک کنید.
- روی لینک بازنشانی توکن کلیک کنید. توکن توسعهدهنده قدیمی شما باید فوراً از کار بیفتد.
- پیکربندی محیط عملیاتی برنامه خود را بهروزرسانی کنید تا از توکن توسعهدهنده جدید استفاده کند.
حسابهای سرویس را ایمن کنید
حسابهای سرویس برای اینکه به درستی با API گوگل ادز کار کنند، نیاز به جعل هویت در سطح دامنه دارند. علاوه بر این، برای تنظیم جعل هویت در سطح دامنه، باید مشتری گوگل ورک اسپیس باشید. به همین دلایل، توصیه میکنیم هنگام فراخوانیهای API گوگل ادز از حسابهای سرویس استفاده نکنید. با این حال، اگر تصمیم به استفاده از حسابهای سرویس دارید، باید آنها را به شرح زیر ایمن کنید:
با کلید حساب کاربری سرویس و فایل JSON خود به عنوان رمز عبور رفتار کنید. در صورت امکان، آنها را با استفاده از یک مدیر مخفی مانند Google Cloud Secret Manager یا AWS Secret Manager ایمن کنید.
برای ایمنسازی و مدیریت حسابهای خدمات خود، از بهترین شیوههای Google Cloud پیروی کنید.
توکنهای کاربر را ایمن کنید
اگر برنامه شما به چندین کاربر اجازه دسترسی میدهد، باید اقدامات بیشتری برای محافظت از توکنهای بهروزرسانی و دسترسی کاربران انجام دهید. توکنها را به طور ایمن در حالت استراحت ذخیره کنید و هرگز آنها را به صورت متن ساده ارسال نکنید. از یک سیستم ذخیرهسازی امن مناسب برای پلتفرم خود استفاده کنید.
مدیریت ابطال و انقضای توکن تازهسازی
اگر برنامه شما به عنوان بخشی از فرآیند احراز هویت، توکن بهروزرسانی OAuth 2.0 را درخواست کند، باید نامعتبرسازی یا انقضای آنها را نیز مدیریت کنید. توکنهای بهروزرسانی میتوانند به دلایل مختلف نامعتبر شوند و برنامه شما باید با احراز هویت مجدد کاربر در جلسه ورود بعدی یا پاکسازی دادههای آنها در صورت لزوم، به این درخواست پاسخ مناسب بدهد. وظایف آفلاین، مانند وظایف cron، باید حسابهایی را که توکنهای بهروزرسانی آنها منقضی شدهاند، شناسایی و ثبت کنند، به جای اینکه به ارسال درخواستهای ناموفق ادامه دهند. گوگل ممکن است برنامههایی را که در یک دوره زمانی پایدار، سطوح بالایی از خطا ایجاد میکنند، مسدود کند تا پایداری سرورهای API حفظ شود.
مدیریت رضایت برای چندین حوزه
اگر برنامه شما درخواست مجوز برای چندین محدوده OAuth 2.0 را داشته باشد، ممکن است کاربر تمام محدودههای OAuth درخواستی شما را اعطا نکند. برنامه شما باید با غیرفعال کردن ویژگیهای مربوطه، عدم پذیرش محدودهها را مدیریت کند. شما میتوانید فقط پس از اینکه کاربر به وضوح قصد استفاده از ویژگی خاصی را که به آن محدوده نیاز دارد، نشان داد، دوباره از او درخواست کنید. در چنین مواردی، از مجوز افزایشی برای درخواست محدودههای OAuth مناسب استفاده کنید.
اگر ویژگیهای اساسی برنامه شما به چندین حوزه نیاز دارد، قبل از درخواست رضایت، این الزام را برای کاربر توضیح دهید.