اگر برنامه شما برای استفاده از APIهای Google برای دسترسی به دادههای کاربران Google درخواست مجوز میکند، ممکن است لازم باشد قبل از اینکه برنامه خود را برای اولین بار در دسترس عموم قرار دهید، فرآیند تأیید را تکمیل کنید.
اینکه آیا این الزام برای برنامه شما اعمال می شود یا نه، بیشتر به دو عامل بستگی دارد:
- نوع دادههای کاربری که به آن دسترسی دارید—اطلاعات نمایه عمومی، ورودیهای تقویم، فایلهای موجود در Drive، دادههای سلامت و تناسب اندام خاص و غیره.
- درجه دسترسی مورد نیاز - فقط خواندنی، خواندن و نوشتن و غیره.
وقتی از OAuth 2.0 برای دریافت مجوز از یک حساب Google برای دسترسی به دادههای آنها استفاده میکنید، از رشتههایی به نام scope استفاده میکنید تا نوع دادهای را که میخواهید از طرف آنها به آن دسترسی داشته باشید، مشخص کنید. اگر برنامه شما دامنههایی را که بهعنوان حساس یا محدود طبقهبندی شدهاند درخواست میکند، احتمالاً باید فرآیند تأیید را تکمیل کنید، مگر اینکه استفاده از برنامه شما واجد شرایط استثنا باشد.
نمونههایی از حوزههای حساس شامل خواندن رویدادهای ذخیره شده در تقویم Google، ذخیره یک مخاطب جدید در Google Contacts یا حذف یک ویدیوی YouTube است. برای اطلاعات بیشتر در مورد دامنه های موجود و طبقه بندی آنها، به مستندات مرجع نقاط پایانی API فراخوانی شده توسط برنامه شما و هر راهنمای مجوز مرتبط منتشر شده برای API مراجعه کنید.
شما باید دامنه هایی را درخواست کنید که به کمترین میزان دسترسی به داده های کاربر لازم برای ارائه آن عملکرد نیاز دارند . به عنوان مثال، برنامهای که فقط دادهها را میخواند، نباید درخواست دسترسی به خواندن، نوشتن و حذف محتوا را داشته باشد، زمانی که دامنه محدودتری برای API و نقاط پایانی مرتبط با آن در دسترس است. دادههایی که از Google API دریافت میکنید فقط باید مطابق با خطمشیهای API و به روشی که در اقدامات برنامه و خطمشی رازداری خود به کاربران خود نشان میدهید استفاده شوند.
مطمئن شوید که زمان لازم برای تکمیل تأیید صحت را در برنامه راهاندازی برنامه خود یا هر ویژگی جدیدی که نیاز به دامنه جدیدی دارد در نظر بگیرید. فرآیند تأیید دامنه حساس معمولاً 3 تا 5 روز کاری طول می کشد تا تکمیل شود. توجه داشته باشید که برنامه شما ممکن است واجد شرایط تکمیل تأیید نام تجاری به عنوان زیرمجموعه ای از درخواست تأیید دامنه حساس شما باشد.
حوزه های حساس را درک کنید
دامنههای حساس قبل از اینکه هر حساب Google بتواند به آن دسترسی بدهد نیاز به بازبینی توسط Google دارد. مدیران سازمان Google Workspace ممکن است دسترسی به حوزههای حساس را محدود کنند تا از دسترسی توسط شناسههای سرویس گیرنده OAuth که سازمان صریحاً آنها را بهعنوان مورد اعتماد علامتگذاری نمیکند، جلوگیری کنند.
استفاده از محدوده خود را درک کنید
- دامنههایی را که برنامهتان استفاده میکند یا میخواهید استفاده کنید، مرور کنید. برای یافتن استفاده از محدوده موجود خود، کد منبع برنامه خود را برای هر دامنه ارسال شده با درخواست مجوز بررسی کنید.
- تعیین کنید که هر محدوده درخواستی برای اقدامات مورد نظر ویژگی برنامه شما ضروری است و از کمترین امتیاز لازم برای ارائه ویژگی استفاده می کند. یک Google API معمولاً دارای اسناد مرجع در صفحه برنامهنویس Google محصول برای نقاط پایانی خود است که شامل محدوده مورد نیاز برای فراخوانی نقطه پایانی یا ویژگیهای خاص است. برای اطلاعات بیشتر در مورد دامنه دسترسی لازم برای نقاط پایانی API که برنامه شما آنها را فراخوانی می کند، اسناد مرجع آن نقاط پایانی را بخوانید.
- دادههایی که از Google API دریافت میکنید فقط باید مطابق با خطمشیهای API و به روشی که در اقدامات برنامه و خطمشی رازداری خود به کاربران خود نشان میدهید استفاده شوند.
- برای کسب اطلاعات بیشتر در مورد هر حوزه، از جمله پتانسیل آن، به اسناد API مراجعه کنید sensitive or restricted وضعیت
- همه دامنه های استفاده شده توسط برنامه خود را در قسمت اعلام کنید API Consoleصفحه محدوده پیکربندی صفحه رضایت OAuth . محدودههایی که مشخص میکنید در دستههای حساس یا محدود گروهبندی میشوند تا تأییدیههای اضافی مورد نیاز را برجسته کنند.
- بهترین محدوده را که با داده های استفاده شده توسط ادغام شما مطابقت دارد پیدا کنید، کاربرد آن را درک کنید، مجدداً تأیید کنید که همه چیز هنوز در یک محیط آزمایشی کار می کند و سپس برای ارسال برای تأیید آماده شوید.
مراحل آماده سازی برای تایید
همه برنامههایی که از Google API برای درخواست دسترسی به دادهها استفاده میکنند، باید مراحل زیر را برای تکمیل تأیید نام تجاری انجام دهند:
- تأیید کنید که برنامه شما تحت هیچ یک از موارد استفاده در بخش استثناها برای الزامات تأیید قرار نمیگیرد.
- اطمینان حاصل کنید که برنامه شما با الزامات نام تجاری APIها یا محصول مرتبط مطابقت دارد. بهعنوان مثال، دستورالعملهای نام تجاری را برای حوزههای ورود به سیستم Google ببینید.
- مالکیت دامنه های مجاز پروژه خود را در کنسول جستجوی Google تأیید کنید. از یک حساب Google که با شما مرتبط است استفاده کنید API Console پروژه به عنوان مالک یا ویرایشگر
- اطمینان حاصل کنید که همه اطلاعات نام تجاری در صفحه رضایت OAuth، مانند نام برنامه، ایمیل پشتیبانی، URI صفحه اصلی، URI خط مشی رازداری و غیره دقیقاً نشان دهنده هویت برنامه است.
الزامات صفحه اصلی برنامه
اطمینان حاصل کنید که صفحه اصلی شما شرایط زیر را دارد:
- صفحه اصلی شما باید در دسترس عموم باشد و نه فقط برای کاربرانی که وارد سایت شما شده اند قابل دسترسی باشد.
- ارتباط صفحه اصلی شما با برنامه ای که در دست بررسی است باید مشخص باشد.
- پیوندهای فهرست برنامه شما در فروشگاه Google Play یا صفحه فیس بوک آن، صفحات اصلی برنامه معتبر محسوب نمی شوند.
الزامات پیوند سیاست حفظ حریم خصوصی برنامه
مطمئن شوید که خطمشی رازداری برنامه شما شرایط زیر را برآورده میکند:
- خطمشی رازداری باید برای کاربران قابل مشاهده باشد، در همان دامنهای که صفحه اصلی برنامه شما میزبانی میشود، و در صفحه رضایت OAuth به آن پیوند داده شود. Google API Console. توجه داشته باشید که صفحه اصلی باید شامل شرحی از عملکرد برنامه و همچنین پیوندهایی به خط مشی رازداری و شرایط اختیاری خدمات باشد.
- خط مشی رازداری باید نحوه دسترسی، استفاده، ذخیره یا به اشتراک گذاری داده های کاربر Google را برنامه کاربردی شما فاش کند. شما باید استفاده خود از داده های کاربر Google را به شیوه هایی که خط مشی رازداری منتشر شده شما فاش می کند محدود کنید.
چگونه برنامه خود را برای تأیید ارسال کنید
الف Google API Console پروژه همه شما را سازماندهی می کند API Console منابع یک پروژه شامل مجموعهای از حسابهای Google مرتبط است که دارای مجوز برای انجام عملیات پروژه، مجموعهای از APIهای فعال و تنظیمات صورتحساب، احراز هویت و نظارت برای آن APIها هستند. برای مثال، یک پروژه میتواند شامل یک یا چند مشتری OAuth باشد، APIها را برای استفاده توسط آن مشتریان پیکربندی کند، و صفحه رضایت OAuth را پیکربندی کند که قبل از اجازه دسترسی به برنامه شما به کاربران نشان داده شود.
اگر هر یک از مشتریان OAuth شما برای تولید آماده نیست، پیشنهاد می کنیم آنها را از پروژه ای که درخواست تأیید می کند حذف کنید. شما می توانید این کار را در Google API Console.
برای ارسال برای تأیید، مراحل زیر را دنبال کنید:
- مطمئن شوید که برنامه شما با شرایط خدمات Google APIs و خطمشی دادههای کاربر خدمات Google API مطابقت دارد.
- نقش مالک و ویرایشگر حسابهای مرتبط پروژه خود و همچنین ایمیل پشتیبانی کاربر صفحه رضایت OAuth و اطلاعات تماس توسعهدهنده را در خود نگه دارید API Console. این تضمین می کند که اعضای صحیح تیم شما از هر گونه نیاز جدید مطلع می شوند.
- برو به API ConsoleOAuth Consent Screen page.
- روی دکمه انتخاب پروژه کلیک کنید.
در گفتگوی Select from ظاهر شده، پروژه خود را انتخاب کنید. اگر نمی توانید پروژه خود را پیدا کنید اما ID پروژه خود را می دانید، می توانید یک URL در مرورگر خود با فرمت زیر ایجاد کنید:
https://console.developers.google.com/apis/credentials/consent?project=[PROJECT_ID]
[PROJECT_ID] را با شناسه پروژه ای که می خواهید استفاده کنید جایگزین کنید.
- دکمه ویرایش برنامه را انتخاب کنید.
- اطلاعات لازم را در صفحه نمایش رضایت OAuth وارد کنید و سپس دکمه ذخیره و ادامه را انتخاب کنید.
- از دکمه افزودن یا حذف دامنه ها برای اعلام همه دامنه های درخواستی برنامه خود استفاده کنید. مجموعه اولیه محدودههایی که برای ورود به سیستم Google ضروری هستند در بخش Non-sensitive scopes از قبل پر شدهاند. دامنه های اضافه شده به عنوان غیر حساس طبقه بندی می شوند، sensitive, or restricted.
- حداکثر سه پیوند به هر سند مرتبط برای ویژگی های مرتبط در برنامه خود ارائه دهید.
هر گونه اطلاعات اضافی که در مورد برنامه شما در مراحل بعدی درخواست می شود ارائه دهید.
- Prepare a detailed justification for each requested sensitive scope, as well as an explanation
for why a narrower scope isn't sufficient. For example: "My app will use
https://www.googleapis.com/auth/calendar
to show a user's Google calendar data on the scheduling screen of my app. This lets users manage their schedules through my app and sync the changes with their Google calendar." -
Prepare a video that fully demonstrates how a user initiates and grants access to the requested scopes and shows, in detail, the usage of the granted sensitive and restricted scopes in the app. Upload the video to YouTube Studio and set its Visibility as Unlisted. You need to provide a link to the demonstration video in the YouTube link field.
- Show the OAuth grant process that users will experience, in English. This includes the consent flow and, if you use Google Sign-In, the sign-in flow.
- Show that the OAuth consent screen correctly displays the App Name.
- Show that the browser address bar of the OAuth consent screen correctly includes your app's OAuth client ID.
- To show how the data will be used, demonstrate the functionality that's enabled by each sensitive scope that you request.
- Prepare a detailed justification for each requested sensitive scope, as well as an explanation
for why a narrower scope isn't sufficient. For example: "My app will use
- اگر پیکربندی برنامه ای که ارائه می کنید به تأیید نیاز دارد، این فرصت را دارید که برنامه را برای تأیید ارسال کنید. فیلدهای مورد نیاز را پر کنید و سپس روی ارسال کلیک کنید تا فرآیند تأیید شروع شود.
پس از ارسال برنامه، تیم اعتماد و ایمنی Google هرگونه اطلاعات اضافی مورد نیاز یا مراحلی را که باید انجام دهید از طریق ایمیل پیگیری میکند. آدرس های ایمیل خود را در بخش اطلاعات تماس برنامه نویس و ایمیل پشتیبانی صفحه رضایت OAuth خود را برای درخواست اطلاعات بیشتر بررسی کنید. همچنین میتوانید صفحه نمایش رضایت OAuth پروژه خود را مشاهده کنید تا وضعیت بررسی فعلی پروژه خود را تأیید کنید، از جمله اینکه آیا فرآیند بررسی متوقف شده است تا زمانی که منتظر پاسخ شما هستیم.
استثنائات برای الزامات تأیید
اگر قرار است برنامه شما در هر یک از سناریوهای شرح داده شده در بخشهای زیر استفاده شود، نیازی به ارسال آن برای بررسی ندارید.
استفاده شخصی
یکی از موارد استفاده این است که شما تنها کاربر برنامه خود هستید یا اگر برنامه شما تنها توسط چند کاربر استفاده می شود که همه آنها شخصاً برای شما شناخته شده هستند. شما و تعداد محدودی از کاربرانتان ممکن است با پیشرفت از طریق صفحه برنامه تأیید نشده و دادن دسترسی به حساب های شخصی خود به برنامه خود راحت باشید.
پروژه های مورد استفاده در مراحل توسعه، آزمایش یا مرحله بندی
به منظور پیروی از خطمشیهای Google OAuth 2.0، توصیه میکنیم پروژههای مختلفی برای آزمایش و محیطهای تولید داشته باشید. توصیه میکنیم فقط در صورتی برنامه خود را برای تأیید ارسال کنید که میخواهید برنامه خود را برای هر کاربری که دارای حساب Google است در دسترس قرار دهید. بنابراین، اگر برنامه شما در مراحل توسعه، آزمایش یا مرحلهبندی است، تأیید لازم نیست.
اگر برنامه شما در مرحله توسعه یا آزمایش است، میتوانید وضعیت انتشار را در تنظیمات پیشفرض تست رها کنید. این تنظیم به این معنی است که برنامه شما هنوز در حال توسعه است و فقط برای کاربرانی که به لیست کاربران آزمایشی اضافه میکنید در دسترس است. شما باید فهرست حسابهای Google را که در توسعه یا آزمایش برنامه شما نقش دارند، مدیریت کنید.
فقط داده های متعلق به خدمات
اگر برنامه شما از یک حساب سرویس فقط برای دسترسی به دادههای خود استفاده میکند، و به هیچیک از دادههای کاربری (مرتبط با حساب Google) دسترسی ندارد، نیازی نیست برای تأیید ارسال کنید.
برای درک اینکه حسابهای سرویس چیست، به حسابهای سرویس در اسناد Google Cloud مراجعه کنید. برای دستورالعملهای نحوه استفاده از حساب سرویس، به استفاده از OAuth 2.0 برای برنامههای کاربردی سرور به سرور مراجعه کنید.
فقط استفاده داخلی
این بدان معناست که این برنامه فقط توسط افرادی در Google Workspace یا سازمان Cloud Identity شما استفاده میشود. پروژه باید متعلق به سازمان باشد و صفحه رضایت OAuth آن باید برای نوع کاربر داخلی پیکربندی شود. در این صورت، ممکن است برنامه شما نیاز به تأیید یک سرپرست سازمان داشته باشد. برای اطلاعات بیشتر، ملاحظات اضافی برای Google Workspace را ببینید.
- درباره برنامه های عمومی و داخلی بیشتر بیاموزید.
- یاد بگیرید چگونه برنامه خود را به عنوان داخلی در سؤالات متداول علامت گذاری کنید چگونه می توانم برنامه خود را به عنوان فقط داخلی علامت گذاری کنم؟
نصب در دامنه
اگر قصد دارید برنامه شما فقط کاربران یک سازمان Google Workspace یا Cloud Identity را هدف قرار دهد و همیشه از نصب در دامنه استفاده کند، برنامه شما نیازی به تأیید برنامه ندارد. این به این دلیل است که یک نصب در دامنه به یک مدیر دامنه اجازه می دهد تا برنامه های شخص ثالث و داخلی به داده های کاربران شما دسترسی داشته باشند. مدیران سازمان تنها حسابهایی هستند که میتوانند برنامه را برای استفاده در دامنههای خود به فهرست مجاز اضافه کنند.
در سؤالات متداول با نحوه نصب برنامه خود به یک دامنه گسترده آشنا شوید.