تتطلّب بعض واجهات Google APIs (التي تقبل النطاقات الحساسة أو المحدودة ) متطلبات بشأن التطبيقات التي تطلب الحصول على إذن بالوصول إلى بيانات المستهلكين. تتطلّب هذه المتطلبات الإضافية للنطاقات المحظورة أن يثبت التطبيق أنّه من أنواع الطلبات المسموح بها وأن يتم إرساله إلى مراجعات إضافية تشمل تقييمًا أمنيًا محتملاً.
تعتمد قابلية سريان النطاقات المحظورة ضمن واجهة برمجة التطبيقات في الغالب على درجة الوصول المطلوبة لتوفير ميزة ذات صلة في تطبيقك، وهي: للقراءة فقط والكتابة فقط والقراءة والكتابة وما إلى ذلك.
عند استخدام بروتوكول OAuth 2.0 للحصول على إذن من حساب Google للوصول إلى هذه البيانات، يمكنك استخدام سلاسل تُسمى النطاقات لتحديد نوع البيانات التي تريد الوصول إليها ومقدار أذونات الوصول التي تحتاجها. إذا كان تطبيقك يطلب نطاقات حساسة أو محدودة، عليك إكمال عملية إثبات الهوية ما لم يكن استخدام التطبيق مؤهّلاً للحصول على استثناء.
النطاقات المقيدة تكون أقل من حيث العدد مقارنةً بالنطاقات الحساسة. تتضمن الأسئلة الشائعة حول إثبات ملكية واجهة برمجة تطبيقات OAuth الخاصة بإثبات الملكية القائمة الحالية للنطاقات الحساسة والمحظورة. توفّر هذه النطاقات إمكانية الوصول على نطاق واسع إلى بيانات مستخدمي Google، وتتطلب منك إكمال عملية التحقّق من النطاق قبل طلبها من أي حساب على Google. للحصول على معلومات حول هذا الشرط، يُرجى الاطّلاع على سياسة بيانات المستخدمين في خدمات Google API والمتطلبات الإضافية لنطاقات محددة لواجهة برمجة التطبيقات أو صفحة مطوّر برامج Google الخاصة بالمنتج. في حال تخزين بيانات ذات نطاق محظور أو نقلها على الخوادم، يجب إكمال تقييم الأمان.
فهم النطاقات المحظورة
إذا كان تطبيقك يطلب أي نطاقات مشروطة وغير مؤهل للحصول على استثناء، عليك استيفاء المتطلبات الإضافية لنطاقات محددة من واجهة برمجة التطبيقات لسياسة بيانات المستخدمين في خدمات Google API، أو استيفاء المتطلبات الخاصة بالمنتج على صفحة مطوّري البرامج على Google، والتي تتطلب عملية مراجعة أكثر شمولاً.
فهم استخدام نطاقك
- راجِع النطاقات التي يستخدمها تطبيقك أو تريد استخدامها. للعثور على استخدام النطاق الحالي، يمكنك فحص رمز مصدر التطبيق لأي نطاقات تم إرسالها مع طلبات التفويض.
- تأكَّد من أنّ كل نطاق مطلوب ضروري للإجراءات المقصودة من ميزات تطبيقك، مع استخدام أقل عدد مطلوب من الأذونات اللازمة لتوفير هذه الميزة. تشتمل واجهة برمجة تطبيقات Google عادةً على مستندات مرجعية على صفحة مطوّري برامج Google الخاصة بالمنتج تتضمن نقاط النهاية الخاصة بها والتي تتضمن النطاق المطلوب لطلب نقطة النهاية أو خصائص معيّنة داخلها. للحصول على مزيد من المعلومات حول نطاقات الوصول اللازمة إلى نقاط النهاية الخاصة بواجهة برمجة التطبيقات التي يطلبها تطبيقك، يُرجى الاطّلاع على المستندات المرجعية الخاصة بنقاط النهاية هذه. For example, for an app that only uses Gmail APIs to occasionally send emails on a user's behalf, don't request the scope that provides full access to the user's email data.
- يجب ألّا تُستخدَم البيانات التي تتلقّاها من Google API إلا بما يتوافق مع سياسات واجهة برمجة التطبيقات وبالطريقة التي تمثلها للمستخدمين في إجراءات تطبيقك وفي سياسة الخصوصية.
- يمكنك الرجوع إلى مستندات واجهة برمجة التطبيقات للاطّلاع على مزيد من المعلومات حول كل نطاق، بما في ذلك sensitive or restricted حالته المحتملة.
- يمكنك تعريف جميع النطاقات التي يستخدمها تطبيقك في صفحة نطاقات إعداد شاشة موافقة OAuth في API Console. يتم تجميع النطاقات التي تحدِّدها في فئات حساسة أو محظورة لتمييز أي عمليات تحقّق إضافية مطلوبة.
- ابحث عن أفضل نطاق يتطابق مع البيانات التي تستخدمها عملية الدمج، وافهم كيفية استخدامها، وأعِد التأكّد من أنّ كل شيء لا يزال يعمل في بيئة اختبار، ثم استعِدّ لإرسال الطلب للتحقق.
احرص على مراعاة الوقت اللازم لإكمال عملية إثبات الملكية في خطة إطلاق تطبيقك أو أي ميزات جديدة تتطلب نطاقًا جديدًا. ويحدث أحد هذه المتطلبات الإضافية إذا وصل التطبيق إلى بيانات مستخدم Google أو كانت بإمكانه الوصول إليها من خادم أو من خلاله. في هذه الحالات، يجب أن يخضع النظام لتقييم أمان سنوي من قِبل جهة تقييم مستقلة خارجية معتمَدة من Google. لهذا السبب، قد يستغرق إكمال عملية إثبات ملكية النطاقات المحظورة عدة أسابيع. تجدر الإشارة إلى أنّه يجب على جميع التطبيقات إكمال خطوة إثبات ملكية العلامة التجارية أولاً، والتي تستغرق عادةً من يومَين إلى 3 أيام عمل، في حال تغيّرت معلومات العلامة التجارية منذ آخر عملية تحقّق من شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth تمت الموافقة عليها.
أنواع التطبيقات المسموح بها
يمكن لبعض أنواع التطبيقات الوصول إلى نطاقات مشروطة لكل منتج. يمكنك العثور على أنواع التطبيقات في صفحة مطوّري برامج Google المخصّصة للمنتج (على سبيل المثال، سياسة Gmail API).
تقع على عاتقك مسؤولية فهم نوع تطبيقك وتحديده. ومع ذلك، إذا لم تكن متأكدًا حقًا من نوع طلب تطبيقك، لن تتمكّن من تحديد أي خيارات للسؤال ما هي الميزات التي ستستخدمها؟ عند إرسال التطبيق لإثبات الملكية. وعندئذٍ سيحدد فريق التحقق التابع لواجهة Google API نوع التطبيق.
التقييم الأمني
كل تطبيق يطلب الوصول إلى بيانات المستخدمين المحظورة على Google ولديه إمكانية الوصول إلى البيانات من خادم تابع لجهة خارجية أو من خلاله يجب أن يخضع لتقييم أمان يُقدِّمه مقيِّمون أمان يعملون في لجنة من خبراء Google. يساعد هذا التقييم في الحفاظ على أمان بيانات مستخدمي Google من خلال التأكّد من أنّ جميع التطبيقات التي يمكنها الوصول إلى بيانات مستخدم Google تُثبت قدرتها على معالجة البيانات بأمان وحذف بيانات المستخدمين بناءً على طلبهم.
لتوحيد تقييم الأمان، نستخدم App Defense Alliance و إطار عمل تقييم أمان التطبيقات على السحابة الإلكترونية (CASA).
كما ذكرنا سابقًا، للاحتفاظ بإمكانية الوصول إلى أي نطاقات مقيَّدة تم التحقق منها، يجب إعادة إثبات امتثال التطبيقات وإجراء تقييم أمان كل 12 شهرًا على الأقل بعد تاريخ الموافقة على خطاب التقييم (LOA). إذا كان تطبيقك يضيف نطاقًا جديدًا مشروطًا، قد يكون بحاجة إلى إعادة تقييمه لتغطية النطاق الإضافي إذا لم يكن قد تم تضمينه في تقييم أمان سابق.
يرسل إليك فريق المراجعة في Google رسالة إلكترونية عندما يحين وقت إعادة التصديق على تطبيقك. وللتأكّد من إبلاغ الأعضاء المناسبين في فريقك بإجراء التنفيذ السنوي هذا، يمكنك ربط حسابات Google إضافية بمشروعك API Console كمالك أو محرِّر. ويساعد ذلك أيضًا في تعديل رسائل البريد الإلكتروني المخصّصة للتواصل مع فريق دعم المستخدم والمطوّرين والتي تم تحديدها في بروتوكول API Console OAuth Consent Screen pageمن Google.
خطوات التحضير لعملية التحقّق
على جميع التطبيقات التي تستخدم Google APIs لطلب الوصول إلى البيانات تنفيذ الخطوات التالية لإكمال عملية إثبات ملكية العلامة التجارية:
- تأكَّد من أنّ تطبيقك لا يندرج تحت أي من حالات الاستخدام في قسم استثناءات متطلبات إثبات الملكية.
- تأكَّد من امتثال تطبيقك لمتطلبات العلامة التجارية لواجهات برمجة التطبيقات أو المنتجات المرتبطة. على سبيل المثال، يمكنك الاطّلاع على إرشادات وضع العلامة التجارية لنطاقات "تسجيل الدخول بحساب Google".
- أثبِت ملكية النطاقات المعتمَدة لمشروعك من Google Search Console. استخدِم حساب Google مرتبط API Console بمشروعك بصفتك مالكًا أو محرِّرًا.
- تأكَّد من أنّ جميع معلومات العلامة التجارية التي تظهر على شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth، مثل اسم التطبيق والبريد الإلكتروني للدعم ومعرّف الموارد المنتظم (URI) للصفحة الرئيسية ومعرّف الموارد المنتظم (URI) لسياسة الخصوصية، وغيرها، تمثّل هوية التطبيق بدقّة.
متطلبات الصفحة الرئيسية لطلب الانضمام
تأكّد من أنّ صفحتك الرئيسية تستوفي المتطلبات التالية:
- يجب أن تكون صفحتك الرئيسية متاحة للجميع، وألا تكون متاحة فقط للمستخدمين الذين سجّلوا الدخول إلى موقعك الإلكتروني.
- يجب أن تكون مدى صلة صفحتك الرئيسية بالتطبيق قيد المراجعة واضحة.
- لا تُعتبر الروابط التي تؤدي إلى بطاقة بيانات تطبيقك على متجر Google Play أو صفحته على Facebook صفحات رئيسية صالحة للتطبيق.
متطلبات رابط سياسة خصوصية التطبيقات
يُرجى التأكّد من أنّ سياسة خصوصية تطبيقك تستوفي المتطلبات التالية:
- يجب أن تكون سياسة الخصوصية مرئية للمستخدمين، ومستضافة على النطاق نفسه مثل الصفحة الرئيسية للتطبيق، ومرتبطة على شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth في Google API Console. يُرجى العِلم أنّ الصفحة الرئيسية يجب أن تتضمّن وصفًا لوظيفة التطبيق، بالإضافة إلى روابط تؤدي إلى سياسة الخصوصية وبنود خدمة اختيارية.
- ويجب أن تفصح سياسة الخصوصية عن الطريقة التي يصل بها تطبيقك إلى بيانات مستخدمي Google أو يستخدمها أو يخزّنها أو يشاركها. The privacy policy must comply with the Google API Services User Data Policy and the Limited Use requirements for restricted scopes. يجب أن يقتصر استخدامك لبيانات مستخدم Google على الممارسات التي تفصح عنها سياسة الخصوصية التي تنشرها.
- Review example cases of privacy policies that don't meet the Limited Use requirements.
كيفية إرسال تطبيقك لإثبات الهوية
ينظّم مشروعGoogle API Console جميع API Console مواردك. ويتكون المشروع من مجموعة من حسابات Google المرتبطة التي لديها الإذن بتنفيذ عمليات المشاريع، ومجموعة من واجهات برمجة التطبيقات المفعَّلة، وإعدادات الفوترة والمصادقة والمراقبة لواجهات برمجة التطبيقات هذه. على سبيل المثال، يمكن أن يحتوي مشروع على عميل OAuth واحد أو أكثر، وإعداد واجهات برمجة التطبيقات ليستخدمها هؤلاء العملاء، وإعداد شاشة موافقة OAuth التي تظهر للمستخدمين قبل السماح لهم بالوصول إلى تطبيقك.
في حال لم يكن أي من عملاء OAuth جاهزًا للإنتاج، ننصحك بحذفه من المشروع الذي يطلب التحقّق منه. ويمكنك إجراء ذلك من خلال Google API Console.
لإرسال طلب لإثبات الملكية، يُرجى اتّباع الخطوات التالية:
- تأكَّد من امتثال تطبيقك لبنود خدمة Google APIs وسياسة بيانات المستخدمين لخدمات Google API.
- يجب إبقاء دور المالك والمحرِّر للحسابات المرتبطة بمشروعك محدَّثًا، بالإضافة إلى عنوان البريد الإلكتروني الخاص بدعم المستخدم ومعلومات الاتصال بالمطوّر على شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth، في API Console. ويضمن ذلك إبلاغ الأعضاء المناسبين في فريقك بأي متطلبات جديدة.
- انتقِل إلى API Console OAuth Consent Screen page.
- انقر على زر أداة اختيار المشروع.
-
في مربّع الحوار اختيار من الذي يظهر، اختَر مشروعك. إذا لم تتمكن من العثور على مشروعك ولكنك تعرف رقم تعريف المشروع، يمكنك إنشاء عنوان URL في متصفحك بالتنسيق التالي:
https://console.developers.google.com/apis/credentials/consent?project=[PROJECT_ID]
استبدِل [PROJECT_ID] بمعرّف المشروع الذي تريد استخدامه.
- اختر الزر تعديل التطبيق.
- أدخِل المعلومات اللازمة على صفحة شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth، ثم انقر على الزر حفظ ومتابعة.
- يمكنك استخدام الزر إضافة نطاقات أو إزالتها للإشارة إلى جميع النطاقات التي يطلبها تطبيقك. يتم ملء مجموعة مبدئية من النطاقات اللازمة لتسجيل الدخول بحساب Google مسبقًا في قسم النطاقات غير الحساسة. يتم تصنيف النطاقات المضافة على أنّها غير حسّاسة، sensitive, or restricted.
- قدِّم ما يصل إلى ثلاثة روابط لأي مستندات ذات صلة بالميزات ذات الصلة في تطبيقك.
-
يُرجى تقديم أي معلومات إضافية مطلوبة عن تطبيقك في الخطوات اللاحقة.
- Ensure your app complies with the Additional requirements for specific API scopes, which includes undergoing an annual security assessment if your app accesses restricted scope Google users' data from or through a third-party server.
- Ensure your app is one of the allowed types specified in the Limited Use section of the Additional requirements for specific API scopes page.
- If your app is a task automation platform, your demonstration video must showcase how multiple API workflows are created and automated, and in which directions user data flows.
-
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 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 and restricted scope that you request.
- If you use multiple clients, and therefore have multiple OAuth client IDs, show how the data is accessed on each OAuth client.
- Select your permitted application type from the "What features will you use?" list.
- Describe how you will use the restricted scopes in your app and why more limited scopes aren't sufficient.
- إذا كانت إعدادات التطبيق التي تقدّمها تتطلب إثبات الهوية، يمكنك إرسال التطبيق لإثبات ملكيته. املأ الحقول المطلوبة، ثم انقر على إرسال لبدء عملية التحقّق من المعلِن.
بعد إرسال تطبيقك، سيتواصل معك فريق الثقة والسلامة من Google لإطلاعك على أي معلومات إضافية يحتاج إليها أو خطوات يجب إكمالها عبر البريد الإلكتروني. يمكنك مراجعة عناوين بريدك الإلكتروني في قسم معلومات الاتصال بالمطوّر وعنوان البريد الإلكتروني المخصّص للدعم في شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth للاطّلاع على طلبات الحصول على معلومات إضافية. يمكنك أيضًا الاطّلاع على صفحة شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth الخاصة بمشروعك للتأكّد من حالة المراجعة الحالية لمشروعك، بما في ذلك ما إذا تم إيقاف عملية المراجعة مؤقتًا بينما ننتظر ردّك.
استثناءات متطلبات إثبات الهوية والأهلية
إذا كنت تريد استخدام تطبيقك في أيٍّ من الحالات الموضّحة في الأقسام التالية، ليس عليك إرساله للمراجعة.
الاستخدام الشخصي
إحدى حالات الاستخدام هي إذا كنت أنت المستخدم الوحيد لتطبيقك أو عدد قليل من المستخدمين معروفين لك شخصيًا. قد تشعر أنت وعدد المستخدمين المحدودين بالارتياح تجاه التقدّم من خلال شاشة التطبيق الذي لم يتم إثبات ملكيته ومنح حساباتك الشخصية إمكانية الوصول إلى تطبيقك.
المشاريع المستخدمة في مستويات التطوير أو الاختبار أو التقسيم المرحلي
من أجل الامتثال لسياسات Google OAuth 2.0، ننصحك بإنشاء مشاريع مختلفة لبيئات الاختبار والإنتاج. ننصحك بعدم إرسال تطبيقك للتحقق إلا إذا كنت تريد إتاحة التطبيق لأي مستخدم لديه حساب Google. وبالتالي، إذا كان تطبيقك في مراحل التطوير أو الاختبار أو المرحلي، لن يكون إثبات ملكيته مطلوبًا.
إذا كان تطبيقك في مرحلتَي التطوير أو الاختبار، يمكنك إبقاء حالة النشر على الإعداد التلقائي الاختبار. يعني هذا الإعداد أنّ تطبيقك لا يزال قيد التطوير، وأنّه متاح فقط للمستخدمين الذين تضيفهم إلى قائمة المستخدمين التجريبيين. يجب إدارة قائمة حسابات Google التي تشارك في تطوير تطبيقك أو اختباره.
![رسالة تحذيرية تفيد بأنّ Google لم تتحقّق من تطبيق يخضع للاختبار.](https://developers.google.cn/static/identity/protocols/oauth2/images/examples/tester-warning-screen.png?authuser=19&hl=ar)
البيانات التي تملكها الخدمة فقط
إذا كان تطبيقك يستخدم حساب خدمة للوصول إلى بياناته الخاصة فقط ولا يصل إلى أي بيانات مستخدمين (مرتبطة بحساب على Google)، لن تحتاج إلى إرسال طلب لإثبات هويتك.
للتعرّف على حسابات الخدمة، يمكنك الاطّلاع على حسابات الخدمة في مستندات Google Cloud. للحصول على تعليمات حول كيفية استخدام حساب الخدمة، راجِع استخدام OAuth 2.0 لتطبيقات خادم إلى خادم.
للاستخدام الداخلي فقط
ويعني ذلك أنّ المستخدمين في مؤسستك على Google Workspace أو Cloud Identity لا يستخدمون التطبيق إلا. يجب أن يكون المشروع ملكًا للمؤسسة، ويجب إعداد شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth الخاصة به لنوع داخلي من المستخدمين. وفي هذه الحالة، قد يحتاج تطبيقك إلى موافقة من مشرف المؤسسة. ولمزيد من المعلومات، يُرجى الاطّلاع على اعتبارات إضافية بشأن Google Workspace.
- يمكنك الاطّلاع على مزيد من المعلومات حول التطبيقات العامة والداخلية.
- تعرَّف على كيفية وضع علامة على تطبيقك باعتباره داخليًا في الأسئلة الشائعة كيف يمكنني وضع علامة على تطبيقي داخليًا فقط؟
التثبيت على مستوى النطاق
إذا كنت تخطط لاستهداف المستخدمين في مؤسسة على Google Workspace أو Cloud Identity فقط مع استخدام التثبيت على مستوى النطاق دائمًا، لن يطلب تطبيقك إثبات ملكية التطبيق. ويرجع ذلك إلى أنّ التثبيت على مستوى النطاق يتيح لمشرف النطاق منح إذن الوصول إلى بيانات المستخدمين والتطبيقات التابعة لجهات خارجية والتطبيقات الداخلية. إنّ مشرفي المؤسسة هم الحسابات الوحيدة التي يمكنها إضافة التطبيق إلى قائمة مسموح بها لاستخدامه داخل نطاقاتهم.
تعرَّف على كيفية إجراء "تثبيت على مستوى النطاق" لتطبيقك في قسم الأسئلة الشائعة يتضمّن تطبيقي مستخدمين لديهم حسابات مؤسسة من نطاق Google Workspace آخر.