برخیاز Google API (آنهایی که دامنههای حساس یا محدود را میپذیرند) برای برنامههایی که بهدنبال اجازه دسترسی به دادههای مصرفکننده هستند الزاماتی دارند. این الزامات اضافی برای گسترههای محدودشده مستلزم این است که برنامه نشان دهد نوع برنامه مجاز است و برای بازبینیهای بیشتر ارسال شود، که شامل ارزیابی امنیتی احتمالی است.
قابلاجرا بودن گسترههای محدودشده در یک میانای برنامهسازی کاربردی عمدتاً به میزان دسترسی موردنیاز برای ارائه ویژگی مربوطه در برنامهتان بستگی دارد: فقط خواندنی، فقط نوشتنی، خواندن و نوشتن، و غیره.
وقتی از OAuth 2.0 برای دریافت اجازه از «حساب Google» برای دسترسی به این دادهها استفاده میکنید، از رشتههایی بهنام دامنهها برای مشخص کردن نوع دادههایی که میخواهید به آنها دسترسی داشته باشید و میزان دسترسی موردنیازتان استفاده میکنید. اگر برنامهتان درخواست دامنههای حساس یا محدود میکند، باید فرایند درستیسنجی را تکمیل کنید، مگراینکه استفاده برنامهتان واجدشرایط استثنا باشد.
تعداد گسترههای محدودشده در مقایسه با گسترههای حساس کمتر است. پرسشگان درستیسنجی OAuth API حاوی فهرست فعلی دامنههای حساس و محدودشده است. این دامنهها دسترسی گستردهای به دادههای کاربر Google ارائه میدهند و لازم است قبلاز درخواست دامنهها از هر «حساب Google»، فرایند درستیسنجی دامنه را طی کنید. برای کسب اطلاعات درباره این الزام، به خطمشی دادههای کاربر سرویسهای Google API و الزامات اضافی برای گسترههای خاص API یا صفحه توسعهدهنده Google مختص محصول مراجعه کنید. اگر دادههای با گستره محدود را در سرورها ذخیره یا منتقل میکنید، باید ارزیابی امنیتی را تکمیل کنید.
آشنایی با دامنههای محدودشده
اگر برنامهتان هرگونه دامنه محدودشدهای را درخواست میکند و واجدشرایط استثنا نیست، باید الزامات تکمیلی برای دامنههای میانای برنامهسازی کاربردی خاص در «خطمشی دادههای کاربر سرویسهای میانای برنامهسازی کاربردی Google» یا الزامات مختص محصول در صفحه توسعهدهنده Google محصول را برآورده کنید که این امر مستلزم فرایند بازبینی گستردهتری است.
درک استفاده از دامنه
- گسترههایی را که برنامهتان استفاده میکند یا میخواهید استفاده کند مرور کنید. برای پیدا کردن استفاده از گستره موجود، کد منبع برنامهتان را برای هر گسترهای که با درخواستهای مجوز ارسال شده است بررسی کنید.
- تعیین کنید که هر حوزه درخواستی برای کنشهای موردنظر ویژگی برنامهتان ضروری است و از کمترین امتیاز لازم برای ارائه ویژگی استفاده میکند. میانای برنامهسازی کاربردی Google معمولاً اسناد مرجعی درباره نقاط پایانی محصول در صفحه توسعهدهنده Google دارد که شامل گستره موردنیاز برای فراخوانی نقطه پایانی یا ویژگیهای خاص درون آن است. برای کسب اطلاعات بیشتر درباره دامنههای دسترسی لازم برای نقاط پایانی میانای برنامهسازی کاربردی که برنامهتان فراخوانی میکند، اسناد مرجع آن نقاط پایانی را بخوانید. برای مثال، برای برنامهای که فقط از Gmail API برای ارسال گاهبهگاه ایمیل ازطرف کاربر استفاده میکند، گسترهای را که دسترسی کامل به دادههای ایمیل کاربر ارائه میدهد درخواست نکنید.
- دادههایی که از Google API دریافت میکنید باید فقط مطابق با خطمشیهای API و به روشی که در کنشهای برنامهتان و در خطمشی رازداریتان به کاربرانتان نشان میدهید استفاده شود.
- برای کسب اطلاعات بیشتر درباره هر دامنه، ازجمله وضعیت احتمالی حساس یا محدودشده آن، به اسناد API مراجعه کنید.
- همه دامنههای استفادهشده توسط برنامهتان را در صفحه «دسترسی به داده» در Cloud Console اعلام کنید. دامنههایی که مشخص میکنید در دستههای حساس یا محدودشده گروهبندی میشوند تا هرگونه درستیسنجی اضافی موردنیاز برجسته شود.
- بهترین دامنهای را که با دادههای مورداستفاده همگرایی شما مطابقت دارد پیدا کنید، کاربرد آن را درک کنید، دوباره تأیید کنید که همه چیز هنوز در محیط آزمایشی کار میکند، و سپس برای ارسال جهت درستیسنجی آماده شوید.
حتماً زمان لازم برای تکمیل درستیسنجی را در طرح راهاندازی برنامهتان یا هر ویژگی جدیدی که به دامنه جدید نیاز دارد درنظر بگیرید. یکی از این الزامات اضافی زمانی رخ میدهد که برنامه به دادههای کاربر Google ازطریق سرور دسترسی داشته باشد یا قابلیت دسترسی به آنها را داشته باشد. در این موارد، سیستم باید تحت ارزیابی امنیتی سالانه ازسوی ارزیاب شخص ثالث مستقل موردتأیید Google قرار گیرد. به همین دلیل، فرایند درستیسنجی گسترههای محدودشده ممکن است چند هفته طول بکشد تا تکمیل شود. توجه داشته باشید که اگر اطلاعات نمانامسازی از زمان آخرین درستیسنجی تأییدشده صفحه رضایت OAuth تغییر کرده باشد، همه برنامهها باید ابتدا مرحله درستیسنجی نمانام را تکمیل کنند که معمولاً ۲ تا ۳ روز کاری طول میکشد.
انواع مجاز برنامه
انواع خاصی از برنامهها میتوانند به دامنههای محدودشده برای هر محصول دسترسی داشته باشند. میتوانید انواع برنامه را در صفحه توسعهدهنده Google مختص محصول (برای مثال، خطمشی Gmail API) پیدا کنید.
مسئولیت درک و تعیین نوع برنامهتان برعهده شما است. بااینحال، اگر واقعاً درباره نوع برنامه کاربردیتان مطمئن نیستید، میتوانید هنگام ارسال برنامه برای درستیسنجی، هیچ گزینهای را برای سؤال از کدام ویژگیها استفاده خواهید کرد؟ انتخاب نکنید. سپس تیم درستیسنجی Google API نوع برنامه را تعیین میکند.
ارزیابی امنیتی
هر برنامهای که درخواست دسترسی به دادههای محدودشده کاربران Google را دارد و میتواند ازطریق سرور شخص ثالث به دادهها دسترسی داشته باشد باید ازسوی ارزیابان امنیتی منتخب Google ارزیابی امنیتی شود. این ارزیابی با تأیید اینکه همه برنامههایی که به دادههای کاربر Google دسترسی دارند، توانایی مدیریت ایمن دادهها و حذف دادههای کاربر را درصورت درخواست کاربر نشان میدهند، به حفظ امنیت دادههای کاربران Google کمک میکند.
برای استانداردسازی ارزیابی امنیتیمان، از App Defense Alliance و چارچوب ارزیابی امنیت برنامه ابری (CASA) استفاده میکنیم.
همانطور که قبلاً ذکر شد، برای حفظ دسترسی به هرگونه گستره محدود درستیسنجیشده، برنامهها باید برای مطابقت با خطمشیها مجدداً درستیسنجی شوند و حداقل هر ۱۲ ماه یکبار پساز تاریخ تأیید «نامه ارزیابی» (LOA) ارزیاب، ارزیابی امنیتی را تکمیل کنند. اگر برنامهتان دامنه محدودشده جدیدی اضافه کند، ممکن است لازم باشد برنامهتان دوباره ارزیابی شود تا دامنه اضافی را پوشش دهد، اگر در ارزیابی امنیتی قبلی گنجانده نشده باشد.
وقتی زمان تأیید مجدد برنامهتان فرا برسد، تیم بازبینی Google برایتان ایمیل ارسال میکند. برای اطمینان از اینکه اعضای مناسب تیمتان از این اجرای سالانه مطلع میشوند، «حسابهای Google» دیگری را بهعنوان «مالک» یا «ویرایشگر» به پروژه Cloud Console خود منسوب کنید. همچنین کمک میکند ایمیلهای تماس با توسعهدهنده و پشتیبانی کاربر را که در صفحه «نمانامسازی» OAuth در «کنسول Google Cloud» مشخص شده است بهروز نگه دارید.
مراحل آماده شدن برای درستیسنجی
همه برنامههایی که از Google APIs برای درخواست دسترسی به دادهها استفاده میکنند باید مراحل زیر را برای تکمیل درستیسنجی نمانام انجام دهند:
- تأیید کنید که برنامهتان تحت هیچکدام از موارد استفاده در بخش استثناهای الزامات درستیسنجی قرار نمیگیرد.
- مطمئن شوید برنامهتان با الزامات نمانامسازی میاناهای برنامهسازی کاربردی یا محصول مرتبط مطابقت دارد. برای مثال، رهنمودهای نمانامسازی را برای دامنههای «ورود به سیستم با Google» ببینید.
- مالکیت دامنههای مجاز پروژهتان را در کنسول جستجوی Google بهتأیید برسانید. از «حساب Google» مرتبط با پروژه «کنسول API» بهعنوان مالک یا ویرایشگر استفاده کنید.
- مطمئن شوید که همه اطلاعات نمانامسازی در صفحه کسب رضایت OAuth، مثل نام برنامه، ایمیل پشتیبانی، شناسه منبع یکسان صفحه اصلی، شناسه منبع یکسان خطمشی رازداری، و غیره، بهدرستی هویت برنامه را نشان میدهد.
الزامات صفحه اصلی برنامه
مطمئن شوید صفحه اصلیتان الزامات زیر را برآورده میکند:
- صفحه اصلی شما باید بهطور عمومی دردسترس باشد و نه فقط برای کاربران واردشده به سیستم سایت شما.
- ارتباط صفحه اصلی شما با برنامهای که تحت بازبینی است باید واضح باشد.
- پیوندهای فهرستگان برنامهتان در «فروشگاه Google Play» یا صفحه Facebook آن بهعنوان صفحه اصلی معتبر برنامه درنظر گرفته نمیشود.
الزامات پیوند خطمشی رازداری برنامه
مطمئن شوید خطمشی رازداری برنامهتان الزامات زیر را برآورده میکند:
- خطمشی رازداری باید برای کاربران قابلمشاهده باشد، در همان دامنهای میزبانی شود که صفحه اصلی برنامهتان قرار دارد، و در صفحه رضایت OAuth در «کنسول Google API» به آن پیوند داده شود. توجه داشته باشید که صفحه اصلی باید شامل شرحی از عملکرد برنامه و همچنین پیوندهایی به خطمشی رازداری و شرایط خدمات اختیاری باشد.
- خطمشی رازداری باید نحوه دسترسی، استفاده، ذخیره، یا همرسانی دادههای کاربر Google توسط برنامهتان را شفافسازی کند. خطمشی رازداری باید با خطمشی دادههای کاربر سرویسهای Google API و الزامات استفاده محدود برای گسترههای محدودشده مطابقت داشته باشد. باید استفادهتان از دادههای کاربر Google را به شیوههایی که در خطمشی رازداری منتشرشدهتان شفافسازی شده است محدود کنید.
- نمونههای خطمشیهای رازداری را که الزامات «استفاده محدود» را برآورده نمیکنند مرور کنید.
نحوه ارسال برنامه برای درستیسنجی نمانام
پروژه کنسول Google Cloud همه منابع «کنسول Cloud» شما را سازماندهی میکند. پروژه شامل مجموعهای از «حسابهای Google» مرتبط است که اجازه انجام عملیات پروژه، مجموعهای از میاناهای برنامهسازی کاربردی فعال، و تنظیمات صورتحساب، اصالتسنجی، و پایش برای آن میاناهای برنامهسازی کاربردی را دارند. برای مثال، یک پروژه میتواند شامل یک یا چند کارخواه OAuth باشد، میاناهای برنامهسازی کاربردی را برای استفاده توسط آن کارخواهها پیکربندی کند، و صفحه رضایت OAuth را پیکربندی کند که قبلاز اینکه کاربران دسترسی به برنامه شما را مجاز کنند به آنها نشان داده میشود.
اگر هرکدام از کارخواههای OAuth شما برای تولید آماده نیست، پیشنهاد میکنیم آنها را از پروژهای که درخواست درستیسنجی میکند حذف کنید. میتوانید این کار را در صفحه کارخواهان انجام دهید.
برای ارسال درخواست درستیسنجی، این مراحل را دنبال کنید:
- مطمئن شوید برنامهتان از شرایط خدمات Google APIs و خطمشی دادههای کاربر سرویسهای Google API تبعیت میکند.
- نقشهای مالک و ویرایشگر حسابهای مرتبط با پروژهتان را در Cloud Console بهروز نگه دارید، همچنین ایمیل پشتیبانی کاربر صفحه رضایت OAuth و اطلاعات تماس توسعهدهنده را. این کار تضمین میکند که اعضای صحیح تیم شما از هرگونه الزامات جدید مطلع شوند.
- به صفحه نمانامسازی OAuth در «کنسول Cloud» بروید.
- روی دکمه انتخابگر پروژه کلیک کنید.
در کادر گفتگوی انتخاب از که ظاهر میشود، پروژهتان را انتخاب کنید. اگر نمیتوانید پروژهتان را پیدا کنید اما شناسه پروژهتان را میدانید، میتوانید نشانی وب را در مرورگرتان با قالب زیر بسازید:
https://console.developers.google.com/auth/branding?project=[PROJECT_ID]
[PROJECT_ID] را با شناسه پروژهای که میخواهید استفاده کنید جایگزین کنید.
در صفحه نمانامسازی، اطلاعات نمانامسازی برنامهتان را ارائه دهید، ازجمله نام برنامه، نشانواره، اطلاعات تماس توسعهدهنده، و پیوندهای مربوطه. هر تغییری که ایجاد میکنید بهعنوان پیشنویس نمانامسازی ذخیره میشود.
برای شروع فرایند ارزیابی، روی دکمه درستیسنجی نمانامسازی کلیک کنید. بازبینی خودکارسازیشده معمولاً ظرف چند دقیقه تکمیل میشود.
وقتی ارزیابی تکمیل شد، وضعیت را مرور کنید. اگر موفقیتآمیز باشد، وضعیت به آماده انتشار تغییر میکند. اگر درستیسنجی خودکار ناموفق بود، میتوانید مشکلات شناساییشده را ببینید و آنها را برطرف کنید یا درخواست بازبینی دستی بدهید.
روی دکمه انتشار نمانامسازی کلیک کنید تا نمانامسازی جدید فعال شود.
اگر برنامهتان برای دامنههای حساس یا محدودشده نیز به درستیسنجی نیاز دارد، به مرکز درستیسنجی OAuth بروید تا وضعیت دسترسی به داده را پیگیری کنید و هرگونه اطلاعات تکمیلی درخواستشده، مانند ویدیو نمایشی، را ارائه دهید. توجه داشته باشید که قبلاز درخواست درستیسنجی برای دسترسی به دادهها، باید وضعیت نمانامسازی منتشرشده داشته باشید.
از دکمه افزودن یا برداشتن دامنهها برای اعلام همه دامنههای درخواستشده توسط برنامهتان استفاده کنید. مجموعه اولیهای از دامنهها که برای «ورود به سیستم با Google» ضروری هستند، در بخش دامنههای غیرحساس ازپیش تکمیل شدهاند. گسترههای اضافهشده بهعنوان غیرحساس، حساس، یا محدودشده طبقهبندی میشوند.
حداکثر سه پیوند به اسناد مربوط به ویژگیهای مرتبط در برنامهتان ارائه دهید.
هرگونه اطلاعات تکمیلی را که درباره برنامهتان در مراحل بعدی درخواست میشود ارائه دهید.
- مطمئن شوید برنامهتان با الزامات اضافی برای دامنههای خاص میانای برنامهسازی کاربردی مطابقت داشته باشد، که شامل گذراندن ارزیابی امنیتی سالانه میشود اگر برنامهتان به دادههای کاربران Google با دامنه محدودشده ازطریق سرور طرف سوم دسترسی داشته باشد.
- مطمئن شوید برنامهتان یکی از انواع مجاز مشخصشده در بخش استفاده محدود در صفحه الزامات اضافی برای گسترههای خاص میانای برنامهسازی کاربردی باشد.
- اگر برنامهتان پلاتفرم خودکارسازی تکلیف است، ویدیو نمایشی شما باید نشان دهد که چگونه چندین گردش کار API ایجاد و خودکارسازی میشود و دادههای کاربر در چه جهاتی جریان مییابد.
- ویدیویی آماده کنید که بهطور کامل نشان دهد کاربر چگونه دسترسی به گسترههای درخواستی را آغاز و اعطا میکند و استفاده از گسترههای حساس و محدودشده اعطاشده در برنامه را با جزئیات نشان دهد. ویدیو را در «استودیوِ YouTube» بارگذاری کنید و رؤیتپذیری را روی فهرستنشده تنظیم کنید. باید
پیوند ویدیو نمایشی را در فیلد پیوند YouTube ارائه دهید.
- فرایند اعطای OAuth را که کاربران تجربه خواهند کرد به زبان انگلیسی نشان دهید. این شامل جریان رضایت و، اگر از «ورود به سیستم با Google» استفاده میکنید، جریان ورود به سیستم میشود.
- نشان دهید که صفحه رضایت OAuth «نام برنامه» را بهدرستی نمایش میدهد.
- نشان دهید که نوار نشانی مرورگر در صفحه کسب رضایت OAuth بهدرستی حاوی شناسه کارخواه OAuth برنامهتان است.
- برای نشان دادن نحوه استفاده از دادهها، عملکردی را که با هریک از گسترههای حساس و محدودشده درخواستی شما فعال میشود نمایش دهید.
- اگر از چند کارخواه استفاده میکنید و بنابراین چند شناسه کارخواه OAuth دارید، نشان دهید که چگونه به دادهها در هر کارخواه OAuth دسترسی پیدا میکنید.
- نوع برنامه مجازتان را از فهرست «از چه ویژگیهایی استفاده خواهید کرد؟» انتخاب کنید.
- توضیح دهید چگونه از گسترههای محدودشده در برنامهتان استفاده خواهید کرد و چرا گسترههای محدودتر کافی نیستند.
پساز اینکه نمانامسازیتان را منتشر کردید یا درخواست دسترسی به دادهها را ارسال کردید، تیم «ایمنی و اعتماد» Google ممکن است ازطریق ایمیل با شما تماس بگیرد و اطلاعات بیشتری را که نیاز دارد یا مراحلی را که باید تکمیل کنید به شما اطلاع دهد. نشانیهای ایمیلتان را در بخش اطلاعات تماس توسعهدهنده و ایمیل پشتیبانی صفحه رضایت OAuth برای درخواست اطلاعات بیشتر بررسی کنید. همچنین میتوانید صفحههای «مرکز درستیسنجی» یا «نمانامسازی» پروژهتان را مشاهده کنید تا وضعیت بازبینی فعلی پروژهتان را تأیید کنید، ازجمله اینکه آیا فرایند بازبینی تا زمانی که منتظر پاسخ شما هستیم موقتاً متوقف شده است یا نه.
استثناهای الزامات درستیسنجی
اگر قرار است برنامهتان در هریک از سناریوهای شرحدادهشده در بخشهای زیر استفاده شود، نیازی نیست آن را برای بازبینی ارسال کنید.
استفاده شخصی
یک مورد استفاده این است که شما تنها کاربر برنامهتان باشید یا برنامهتان فقط توسط چند کاربر استفاده شود که همه آنها را شخصاً میشناسید. شما و تعداد محدودی از کاربرانتان ممکن است با پیش رفتن در صفحه برنامه تأییدنشده و اعطای دسترسی به حسابهای شخصیتان به برنامهتان مشکلی نداشته باشید.
پروژههای مورداستفاده در ردیفهای «توسعه»، «آزمایش»، یا «آمادهسازی»
برای رعایت خطمشیهای Google OAuth 2.0، توصیه میکنیم پروژههای متفاوتی برای محیطهای آزمایشی و تولیدی داشته باشید. توصیه میکنیم فقط درصورتی برنامهتان را برای درستیسنجی ارسال کنید که بخواهید برنامهتان را برای همه کاربران دارای «حساب Google» دردسترس قرار دهید. بنابراین، اگر برنامهتان در مرحله توسعه، آزمایش، یا آمادهسازی است، درستیسنجی لازم نیست.
اگر برنامهتان در مرحله توسعه یا آزمایش است، میتوانید وضعیت انتشار را در تنظیم پیشفرض آزمایش رها کنید. این تنظیم به این معنی است که برنامه شما هنوز درحال توسعه است و فقط برای کاربرانی که به فهرست کاربران آزمایشی اضافه میکنید دردسترس است. باید فهرست «حسابهای Google» را که در توسعه یا آزمایش برنامهتان مشارکت دارند مدیریت کنید.
فقط دادههای متعلق به سرویس
اگر برنامهتان از حساب سرویس برای دسترسی به دادههای خودش استفاده میکند و به دادههای کاربر (پیوندشده به «حساب Google») دسترسی ندارد، لازم نیست آن را برای درستیسنجی ارسال کنید.
برای درک اینکه حسابهای خدمات چیست، به حسابهای خدمات در اسناد Google Cloud مراجعه کنید. برای دستورالعملهای نحوه استفاده از حساب سرویس، به استفاده از OAuth 2.0 برای برنامههای سرور به سرور مراجعه کنید.
فقط مصرف داخلی
این یعنی فقط افراد موجود در سازمان Google Workspace یا Cloud Identity شما از این برنامه استفاده میکنند. پروژه باید متعلق به سازمان باشد و صفحه رضایت OAuth آن باید برای نوع کاربر داخلی پیکربندی شود. در این حالت، ممکن است برنامهتان به تأیید سرپرست سازمان نیاز داشته باشد. برای اطلاعات بیشتر، ملاحظات تکمیلی برای Google Workspace را ببینید.
- درباره برنامههای عمومی و داخلی بیشتر بدانید.
- در پرسشگان چگونه میتوانم برنامهام را بهعنوان فقط داخلی علامتگذاری کنم؟ با نحوه علامتگذاری برنامهتان بهعنوان داخلی آشنا شوید.
نصب در سراسر دامنه
اگر برنامهریزی کردهاید که برنامهتان فقط کاربران سازمان Google Workspace یا Cloud Identity را هدف قرار دهد و همیشه از نصب در سراسر دامنه استفاده کند، برنامهتان به درستیسنجی نمانام نیاز نخواهد داشت. بااینحال، اگر برنامهتان از دامنههای محدودشده یا حساس استفاده میکند، درستیسنجی برنامه الزامی است. دلیلش این است که نصب در سراسر دامنه به سرپرست دامنه اجازه میدهد به برنامههای داخلی و طرف سوم اجازه دهد به دادههای کاربران شما دسترسی داشته باشند. سرپرستان سازمان تنها حسابهایی هستند که میتوانند برنامه را به فهرست مجاز برای استفاده در دامنههایشان اضافه کنند.
در پرسشگان برنامه من کاربرانی با حسابهای سازمانی از دامنه Google Workspace دیگری دارد، با نحوه تبدیل کردن برنامهتان به «نصب در سراسر دامنه» آشنا شوید.