التحقّق من نطاق محظور

تتضمّن بعض واجهات برمجة التطبيقات من Google (تلك التي تقبل نطاقات حسّاسة أو مقيّدة) متطلبات للتطبيقات التي تطلب الإذن بالوصول إلى بيانات المستهلكين. وتتطلّب هذه المتطلبات الإضافية للنطاقات المقيّدة أن يثبت التطبيق أنّه من نوع التطبيقات المسموح بها وأن يخضع لمراجعات إضافية، بما في ذلك تقييم أمني محتمل.

يعتمد مدى انطباق النطاقات المحظورة ضمن واجهة برمجة التطبيقات بشكل أساسي على درجة الوصول المطلوبة لتوفير ميزة ذات صلة في تطبيقك، مثل القراءة فقط أو الكتابة فقط أو القراءة والكتابة وما إلى ذلك.

عند استخدام بروتوكول OAuth 2.0 للحصول على إذن من حساب Google للوصول إلى هذه البيانات، عليك استخدام سلاسل تُعرف باسم النطاقات لتحديد نوع البيانات التي تريد الوصول إليها ومقدار الوصول الذي تحتاجه. إذا كان تطبيقك يطلب نطاقات حسّاسة أو محظورة، عليك إكمال عملية التحقّق ما لم يكن استخدام تطبيقك مؤهلاً للحصول على استثناء.

عدد النطاقات المحظورة أقل من عدد النطاقات الحسّاسة. يتضمّن الأسئلة الشائعة حول التحقّق من تطبيق واجهة برمجة تطبيقات OAuth القائمة الحالية بالنطاقات الحسّاسة والمحظورة. تتيح هذه النطاقات الوصول على نطاق واسع إلى بيانات مستخدمي Google، وتتطلّب منك إكمال عملية التحقّق من النطاق قبل طلب النطاقات من أي حساب على Google. للحصول على معلومات حول هذا الشرط، يُرجى الاطّلاع على سياسة بيانات المستخدمين في خدمات Google API والمتطلبات الإضافية لنطاقات API معيّنة أو صفحة Google Developer الخاصة بالمنتج.إذا كنت تخزِّن بيانات النطاقات المحظورة أو تنقلها على الخوادم، عليك إكمال تقييم أمان.

فهم النطاقات المحظورة

إذا كان تطبيقك يطلب أي نطاقات محظورة ولا يستوفي شروط الاستثناء، عليك استيفاء المتطلبات الإضافية لنطاقات معيّنة في واجهات برمجة التطبيقات من "سياسة بيانات المستخدم لخدمات 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 بما يتوافق مع سياسات واجهة برمجة التطبيقات وبالطريقة التي توضّحها للمستخدمين في إجراءات تطبيقك وفي سياسة الخصوصية.
  • راجِع مستندات واجهة برمجة التطبيقات لمعرفة المزيد عن كل نطاق، بما في ذلك الحالة المحتملة.
  • يجب الإفصاح عن جميع النطاقات التي يستخدمها تطبيقك في صفحة "الوصول إلى البيانات" في Cloud Console. يتم تجميع النطاقات التي تحدّدها في فئات حسّاسة أو محظورة لتسليط الضوء على أي عملية تحقّق إضافية مطلوبة.
  • ابحث عن النطاق الأنسب للبيانات التي يستخدمها التكامل، وافهم طريقة استخدامه، وأعِد التأكيد على أنّ كل شيء لا يزال يعمل في بيئة اختبار، ثم استعد لإرسال طلب التحقّق.

احرص على مراعاة الوقت اللازم لإكمال عملية التحقّق في خطة إطلاق تطبيقك أو أي ميزات جديدة تتطلّب نطاقًا جديدًا. يتم تطبيق أحد هذه المتطلبات الإضافية إذا كان التطبيق يصل إلى بيانات مستخدمي Google أو لديه القدرة على الوصول إليها من خادم أو من خلاله. في هذه الحالات، يجب أن يخضع النظام لتقييم أمان سنوي من جهة تقييم مستقلة تابعة لجهة خارجية ومعتمدة من Google. لهذا السبب، قد تستغرق عملية إثبات ملكية النطاقات المحظورة عدة أسابيع حتى تكتمل. يُرجى العِلم أنّه يجب أن تكمل جميع التطبيقات أولاً خطوة التحقّق من العلامة التجارية، والتي تستغرق عادةً من يومَين إلى ثلاثة أيام عمل، وذلك في حال تغيّرت معلومات العلامة التجارية منذ آخر عملية تحقّق تمت الموافقة عليها من شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth.

أنواع التطبيقات المسموح بها

يمكن لأنواع معيّنة من التطبيقات الوصول إلى نطاقات محظورة لكل منتج. يمكنك العثور على أنواع التطبيقات في صفحة المطوّرين على Google الخاصة بالمنتج (على سبيل المثال، سياسة Gmail API).

وتقع على عاتقك مسؤولية فهم نوع تطبيقك وتحديده. ومع ذلك، إذا لم تكن متأكّدًا من نوع تطبيقك، يمكنك عدم تحديد أي خيار للإجابة عن السؤال ما هي الميزات التي ستستخدمها؟ عند إرسال التطبيق لإثبات الملكية. سيحدّد فريق التحقّق في Google API نوع التطبيق.

تقييم الأمان

يجب أن يخضع كل تطبيق يطلب الوصول إلى البيانات المحظورة لمستخدمي Google ولديه القدرة على الوصول إلى البيانات من خادم تابع لجهة خارجية أو من خلاله لتقييم أمان على أيدي فريق تقييم أمني معتمَد من Google. يساعد هذا التقييم في الحفاظ على أمان بيانات مستخدمي Google من خلال التحقّق من أنّ جميع التطبيقات التي تصل إلى بيانات مستخدمي Google لديها القدرة على معالجة البيانات بأمان وحذف بيانات المستخدمين بناءً على طلبهم.

لتوحيد معايير تقييم الأمان، نستخدم تحالف App Defense Alliance وإطار تقييم أمان تطبيقات السحابة الإلكترونية (CASA).

كما ذكرنا سابقًا، للحفاظ على إمكانية الوصول إلى أي نطاقات محدودة تم التحقّق منها، يجب إعادة التحقّق من امتثال التطبيقات وإكمال تقييم الأمان مرة واحدة على الأقل كل 12 شهرًا بعد تاريخ الموافقة على "خطاب التقييم" (LOA) الذي أعدّه المقيم. وإذا أضاف تطبيقك نطاقًا محدودًا جديدًا، قد تحتاج إلى إعادة تقييم تطبيقك لتغطية النطاق الإضافي إذا لم يكن مضمّنًا في تقييم أمان سابق.

يُرسِل فريق المراجعة في Google رسالة إلكترونية إليك عندما يحين وقت إعادة اعتماد تطبيقك. ولضمان إرسال الإشعار السنوي بشأن التنفيذ إلى أعضاء فريقك المعنيين، اربط حسابات Google إضافية بمشروعك على Cloud Console بصفتك مالكًا أو محرِّرًا. ويساعد أيضًا في إبقاء عناوين البريد الإلكتروني المخصّصة لدعم المستخدمين والتواصل مع المطوّرين محدَّثة، وهي العناوين المحدَّدة في صفحة "العلامة التجارية" في Google Cloud Console OAuth.

خطوات الاستعداد لعملية إثبات الملكية

يجب أن تتّبع جميع التطبيقات التي تستخدم Google APIs لطلب الوصول إلى البيانات الخطوات التالية لإكمال عملية إثبات ملكية العلامة التجارية:

  1. تأكَّد من أنّ تطبيقك لا يندرج ضمن أي من حالات الاستخدام الواردة في قسم استثناءات من متطلبات التحقّق.
  2. عليك التأكّد من أنّ تطبيقك يلتزم بمتطلبات العلامة التجارية لواجهات برمجة التطبيقات أو المنتجات المرتبطة به. على سبيل المثال، يمكنك الاطّلاع على إرشادات وضع العلامة التجارية لنطاقات "تسجيل الدخول باستخدام حساب Google".
  3. أثبِت ملكية النطاقات المعتمَدة في مشروعك ضمن Google Search Console. استخدِم حساب Google مرتبطًا بمشروعك على API Console كمالك أو كمحرّر.
  4. تأكَّد من أنّ جميع معلومات العلامة التجارية المعروضة على شاشة طلب الموافقة المتعلّقة ببروتوكول 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 Cloud Console جميع مواردك في Cloud Console. ويتألف المشروع من مجموعة من حسابات Google المرتبطة التي لديها إذن بتنفيذ عمليات المشروع، ومجموعة من واجهات برمجة التطبيقات المفعَّلة، وإعدادات الفوترة والمصادقة والمراقبة لواجهات برمجة التطبيقات هذه. على سبيل المثال، يمكن أن يحتوي المشروع على عميل واحد أو أكثر من عملاء OAuth، وإعداد واجهات برمجة التطبيقات لاستخدامها من قِبل هؤلاء العملاء، وإعداد شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth التي يتم عرضها للمستخدمين قبل منحهم إذن الوصول إلى تطبيقك.

إذا كان أي من عملاء OAuth غير جاهز للإصدار العلني، ننصحك بحذفه من المشروع الذي يطلب إثبات الملكية. يمكنك إجراء ذلك في صفحة العملاء.

لإرسال طلب إثبات الملكية، اتّبِع الخطوات التالية:

  1. يجب التأكّد من أنّ تطبيقك يلتزم ببنود خدمة Google APIs وسياسة بيانات المستخدمين الخاصة بخدمات Google API.
  2. يجب الحفاظ على تحديث أدوار المالك والمحرّر للحسابات المرتبطة بمشروعك، بالإضافة إلى عنوان البريد الإلكتروني المخصّص لدعم المستخدمين في شاشة طلب الموافقة على OAuth ومعلومات الاتصال بالمطوّر، وذلك في Cloud Console، ما يضمن إعلام أعضاء فريقك المعنيين بأي متطلبات جديدة.
  3. انتقِل إلى مركز التحقّق في OAuth ضمن Cloud Console.
  4. انقر على زر أداة اختيار المشروع.
  5. في مربّع الحوار الاختيار من الذي يظهر، اختَر مشروعك. إذا لم تتمكّن من العثور على مشروعك ولكنّك تعرف رقم تعريف مشروعك، يمكنك إنشاء عنوان URL في المتصفّح بالتنسيق التالي:

    https://console.developers.google.com/auth/branding?project=[PROJECT_ID]

    استبدِل [PROJECT_ID] برقم تعريف المشروع الذي تريد استخدامه.

  6. انقر على الزر تعديل التطبيق.
  7. أدخِل المعلومات اللازمة في صفحة شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth، ثم انقر على الزر حفظ ومتابعة.
  8. استخدِم الزر إضافة نطاقات أو إزالتها للتعريف بجميع النطاقات التي يطلبها تطبيقك. يتم إعداد مجموعة أولية من النطاقات الضرورية لاستخدام ميزة "تسجيل الدخول باستخدام حساب Google" مسبقًا في قسم النطاقات غير الحسّاسة. يتم تصنيف النطاقات المُضافة على أنّها غير حسّاسة، <a href="/identity/protocols/oauth2/production-readiness/sensitive-scope-verification"

    sensitive, or restricted.

  9. قدِّم ما يصل إلى ثلاثة روابط تؤدي إلى أي مستندات ذات صلة بالميزات المشابهة في تطبيقك.
  10. قدِّم أي معلومات إضافية مطلوبة عن تطبيقك في الخطوات التالية.

    1. 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.
    2. Ensure your app is one of the allowed types specified in the Limited Use section of the Additional requirements for specific API scopes page.
    3. 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.
    4. 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.

      1. 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.
      2. Show that the OAuth consent screen correctly displays the App Name.
      3. Show that the browser address bar of the OAuth consent screen correctly includes your app's OAuth client ID.
      4. To show how the data will be used, demonstrate the functionality that's enabled by each sensitive and restricted scope that you request.
      5. If you use multiple clients, and therefore have multiple OAuth client IDs, show how the data is accessed on each OAuth client.
    5. Select your permitted application type from the "What features will you use?" list.
    6. Describe how you will use the restricted scopes in your app and why more limited scopes aren't sufficient.
  11. إذا كانت إعدادات التطبيق التي تقدّمها تتطلّب التحقّق، يمكنك إرسال التطبيق لإجراء عملية التحقّق. املأ الحقول المطلوبة، ثم انقر على إرسال لبدء عملية إثبات الهوية.

بعد إرسال تطبيقك، سيتواصل معك فريق "الأمان والثقة " في Google عبر البريد الإلكتروني لطلب أي معلومات إضافية أو إعلامك بالخطوات التي يجب إكمالها. راجِع عناوين بريدك الإلكتروني في قسم معلومات الاتصال الخاصة بالمطوّر والبريد الإلكتروني المخصّص للدعم في شاشة موافقة OAuth بحثًا عن طلبات الحصول على معلومات إضافية. يمكنك أيضًا الاطّلاع على صفحة شاشة موافقة OAuth الخاصة بمشروعك لتأكيد حالة المراجعة الحالية لمشروعك، بما في ذلك ما إذا كانت عملية المراجعة متوقفة مؤقتًا أثناء انتظار ردّك.

استثناءات من متطلبات إثبات الهوية

إذا كان سيتم استخدام تطبيقك في أي من السيناريوهات الموضّحة في الأقسام التالية، لن تحتاج إلى إرساله للمراجعة.

الاستخدام الشخصي

من حالات الاستخدام أن تكون أنت المستخدم الوحيد لتطبيقك أو أن يستخدم تطبيقك عدد قليل من المستخدمين الذين تعرفهم شخصيًا. قد يكون عدد محدود من المستخدمين وأنت على استعداد لتخطّي شاشة التطبيق الذي لم يتم التحقّق منه ومنح حساباتك الشخصية إذن الوصول إلى تطبيقك.

المشاريع المستخدَمة في مستويات التطوير أو الاختبار أو الإعداد

من أجل الامتثال لسياسات Google OAuth 2.0، ننصحك بأن يكون لديك مشاريع مختلفة لبيئات الاختبار والإصدار العلني. ننصحك بعدم إرسال تطبيقك لإجراء عملية التحقّق إلا إذا كنت تريد إتاحته لأي مستخدم لديه حساب Google. لذلك، إذا كان تطبيقك في مراحل التطوير أو الاختبار أو الإعداد، لن يُطلب منك إثبات ملكيته.

إذا كان تطبيقك في مرحلة التطوير أو الاختبار، يمكنك ترك حالة النشر في الإعداد التلقائي اختبار. يعني هذا الإعداد أنّ تطبيقك لا يزال قيد التطوير ولا يتوفّر إلا للمستخدمين الذين تضيفهم إلى قائمة المستخدمين التجريبيين. يجب إدارة قائمة حسابات Google المشارِكة في تطوير تطبيقك أو اختباره.

رسالة تحذيرية تفيد بأنّ Google لم تتحقّق من تطبيق يخضع للاختبار.
الشكل 1. شاشة التحذير للمختبِر

البيانات المملوكة للخدمة فقط

إذا كان تطبيقك يستخدم حساب خدمة للوصول إلى بياناته فقط، ولا يصل إلى أي بيانات مستخدم (مرتبطة بحساب Google)، لن تحتاج إلى إرسال طلب لإثبات الملكية.

للتعرّف على حسابات الخدمة، يُرجى الاطّلاع على حسابات الخدمة في مستندات Google Cloud. للحصول على تعليمات حول كيفية استخدام حساب خدمة، يُرجى الاطّلاع على استخدام OAuth 2.0 لتطبيقات خادم إلى خادم.

للاستخدام الداخلي فقط

وهذا يعني أنّ التطبيق لا يستخدمه سوى المستخدمين في مؤسستك على Google Workspace أو Cloud Identity. ويجب أن تكون المؤسسة هي مالكة المشروع، ويجب ضبط شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth الخاصة به على نوع مستخدم داخلي. في هذه الحالة، قد يحتاج تطبيقك إلى موافقة من مشرف المؤسسة. لمزيد من المعلومات، يُرجى الاطّلاع على اعتبارات إضافية بشأن Google Workspace.

التثبيت على مستوى النطاق

إذا كنت تخطّط لاستهداف مستخدمي مؤسسة Google Workspace أو Cloud Identity فقط واستخدام التثبيت على مستوى النطاق دائمًا، لن يحتاج تطبيقك إلى إثبات ملكية العلامة التجارية. ومع ذلك، إذا كان تطبيقك يستخدم نطاقات مقيَّدة أو حساسة، يجب إجراء عملية التحقّق من التطبيق. ويرجع ذلك إلى أنّ عملية التثبيت على مستوى النطاق تتيح لمشرف النطاق منح التطبيقات التابعة لجهات خارجية والتطبيقات الداخلية إذن الوصول إلى بيانات المستخدمين. إنّ حسابات مشرفي المؤسسة هي الحسابات الوحيدة التي يمكنها إضافة التطبيق إلى قائمة التطبيقات المسموح بها لاستخدامه ضمن نطاقاتها.

تعرَّف على كيفية جعل تطبيقك قابلاً للتثبيت على مستوى النطاق في الأسئلة الشائعة يتضمّن تطبيقي مستخدمين لديهم حسابات مؤسسة من نطاق آخر على Google Workspace.