إثبات ملكية النطاق الحسّاس

إذا طلب تطبيقك إذنًا لاستخدام Google APIs للوصول إلى بيانات مستخدمي Google، قد تحتاج إلى إكمال عملية إثبات ملكية قبل إتاحة تطبيقك للجميع للمرة الأولى.

يعتمد تطبيق هذا الشرط على تطبيقك في الغالب على عاملَين:

  1. نوع بيانات المستخدم التي تصل إليها: معلومات الملف الشخصي العلنية وإدخالات التقويم والملفات في Drive وبعض بيانات الصحة واللياقة البدنية وغيرها
  2. درجة الوصول التي تحتاجها - للقراءة فقط والقراءة والكتابة وما إلى ذلك.

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

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

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

احرص على مراعاة الوقت اللازم لإكمال عملية إثبات الملكية في خطة إطلاق تطبيقك أو أي ميزات جديدة تتطلب نطاقًا جديدًا. يستغرق عادةً إكمال عملية إثبات ملكية النطاق الحسّاس من 3 إلى 5 أيام عمل. يُرجى العلم أنّ تطبيقك قد يكون مؤهّلاً لإكمال عملية إثبات ملكية العلامة التجارية كمجموعة فرعية من طلب إثبات ملكية النطاق الحسّاس.

فهم النطاقات الحساسة

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

فهم استخدام نطاقك

  • راجِع النطاقات التي يستخدمها تطبيقك أو تريد استخدامها. للعثور على استخدام النطاق الحالي، يمكنك فحص رمز مصدر التطبيق لأي نطاقات تم إرسالها مع طلبات التفويض.
  • تأكَّد من أنّ كل نطاق مطلوب ضروري للإجراءات المقصودة من ميزات تطبيقك، مع استخدام أقل عدد مطلوب من الأذونات اللازمة لتوفير هذه الميزة. تشتمل واجهة برمجة تطبيقات Google عادةً على مستندات مرجعية على صفحة مطوّري برامج Google الخاصة بالمنتج تتضمن نقاط النهاية الخاصة بها والتي تتضمن النطاق المطلوب لطلب نقطة النهاية أو خصائص معيّنة داخلها. للحصول على مزيد من المعلومات حول نطاقات الوصول اللازمة إلى نقاط النهاية الخاصة بواجهة برمجة التطبيقات التي يطلبها تطبيقك، يُرجى الاطّلاع على المستندات المرجعية الخاصة بنقاط النهاية هذه.
  • يجب ألّا تُستخدَم البيانات التي تتلقّاها من Google API إلا بما يتوافق مع سياسات واجهة برمجة التطبيقات وبالطريقة التي تمثلها للمستخدمين في إجراءات تطبيقك وفي سياسة الخصوصية.
  • يمكنك الرجوع إلى مستندات واجهة برمجة التطبيقات للاطّلاع على مزيد من المعلومات حول كل نطاق، بما في ذلك sensitive or restricted حالته المحتملة.
  • يمكنك تعريف جميع النطاقات التي يستخدمها تطبيقك في صفحة نطاقات إعداد شاشة موافقة OAuth في API Console. يتم تجميع النطاقات التي تحدِّدها في فئات حساسة أو محظورة لتمييز أي عمليات تحقّق إضافية مطلوبة.
  • ابحث عن أفضل نطاق يتطابق مع البيانات التي تستخدمها عملية الدمج، وافهم كيفية استخدامها، وأعِد التأكّد من أنّ كل شيء لا يزال يعمل في بيئة اختبار، ثم استعِدّ لإرسال الطلب للتحقق.
يعرض الجدول اسم واجهة برمجة التطبيقات، وأحد نطاقاتها الحساسة، ووصفًا
            لما يشمله النطاق.
الشكل 1. مثال على نطاق حسّاس معروض في صفحة نطاقات ضبط شاشة طلب الموافقة في 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 أو يستخدمها أو يخزّنها أو يشاركها. يجب أن يقتصر استخدامك لبيانات مستخدم Google على الممارسات التي تفصح عنها سياسة الخصوصية التي تنشرها.

كيفية إرسال تطبيقك لإثبات الهوية

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

في حال لم يكن أي من عملاء OAuth جاهزًا للإنتاج، ننصحك بحذفه من المشروع الذي يطلب التحقّق منه. ويمكنك إجراء ذلك من خلال Google API Console.

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

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

    https://console.developers.google.com/apis/credentials/consent?project=[PROJECT_ID]

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

  6. اختر الزر تعديل التطبيق.
  7. أدخِل المعلومات اللازمة على صفحة شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth، ثم انقر على الزر حفظ ومتابعة.
  8. يمكنك استخدام الزر إضافة نطاقات أو إزالتها للإشارة إلى جميع النطاقات التي يطلبها تطبيقك. يتم ملء مجموعة مبدئية من النطاقات اللازمة لتسجيل الدخول بحساب Google مسبقًا في قسم النطاقات غير الحساسة. يتم تصنيف النطاقات المضافة على أنّها غير حسّاسة، sensitive, or restricted.
  9. قدِّم ما يصل إلى ثلاثة روابط لأي مستندات ذات صلة بالميزات ذات الصلة في تطبيقك.
  10. يُرجى تقديم أي معلومات إضافية مطلوبة عن تطبيقك في الخطوات اللاحقة.

    1. 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."
    2. 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.

      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 scope that you request.
  11. إذا كانت إعدادات التطبيق التي تقدّمها تتطلب إثبات الهوية، يمكنك إرسال التطبيق لإثبات ملكيته. املأ الحقول المطلوبة، ثم انقر على إرسال لبدء عملية التحقّق من المعلِن.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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