تفرض بعض واجهات برمجة تطبيقات Google (تلك التي تقبل النطاقات الحسّاسة أو المحظورة ) متطلبات على التطبيقات التي تطلب الحصول على إذن للوصول إلى بيانات المستهلكين. تتطلّب هذه المتطلبات الإضافية النطاقات المحظورة من التطبيق إثبات أنّه من أنواع التطبيقات المسموح بها، وأن يخضع لمراجعات إضافية تشمل تقييمًا للأمان.
تعتمد إمكانية تطبيق النطاقات المحظورة ضمن واجهة برمجة التطبيقات بشكل أساسي على درجة الوصول المطلوبة لتقديم ميزة ذات صلة في تطبيقك: القراءة فقط أو الكتابة فقط أو القراءة والكتابة وما إلى ذلك.
عند استخدام بروتوكول OAuth 2.0 للحصول على إذن من حساب Google للوصول إلى هذه البيانات، يتم استخدام سلاسل تُعرف باسم النطاقات لتحديد نوع البيانات التي تريد الوصول إليها ومقدار إذن الوصول الذي تحتاجه. إذا كان تطبيقك يطلب نطاقات حساسة أو محدودة، عليك إكمال عملية التحقّق ما لم يكن استخدام تطبيقك مؤهلاً للاستفادة من استثناء.
تكون النطاقات المحظورة أقل عددًا مقارنةً بالنطاقات الحسّاسة. تحتوي الأسئلة الشائعة بشأن التحقّق من OAuth API على القائمة الحالية لنطاقَي "البيانات الحسّاسة" و"البيانات المحظورة". توفّر هذه النطاقات إمكانية وصول واسعة إلى بيانات مستخدمي Google وتتطلّب منك إكمال عملية إثبات ملكية النطاق قبل طلب النطاقات من أي حساب على Google. للحصول على معلومات عن هذا المتطلّب، يُرجى الاطّلاع على سياسة بيانات مستخدمي خدمات Google API والمتطلبات الإضافية لنطاقات محددة لواجهات برمجة التطبيقات أو صفحة "مطوّرو تطبيقات Google" الخاصة بالمنتج. إذا كنت تخزِّن بيانات النطاق المحدود أو تنقل هذه البيانات على الخوادم، عليك إكمال تقييم أمان.
فهم النطاقات المحظورة
إذا كان تطبيقك يطلب أي نطاقات متاحة لعدد محدود من التطبيقات ولا يستوفي استثناءً، عليك استيفاء المتطلبات الإضافية لنطاقات محددة لواجهات برمجة التطبيقات في سياسة data User Services API في Google، أو المتطلبات الخاصة بالمنتج على صفحة المطوّر على Google الخاصة بالمنتج، ما يتطلّب عملية مراجعة أكثر شمولاً.
فهم استخدام النطاق
- راجِع النطاقات التي يستخدمها تطبيقك أو التي تريد استخدامها. للعثور على استخدام النطاق الحالي، راجِع رمز مصدر تطبيقك بحثًا عن أي نطاقات تم إرسالها مع طلبات التفويض.
- حدِّد ما إذا كان كل نطاق مطلوب ضروريًا للإجراءات المقصودة لميزة تطبيقك واستخدام الحد الأدنى من الأذونات اللازمة لتقديم الميزة. تتضمّن Google API عادةً مستندات مرجعية في صفحة المطوّر على 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 إلا بما يتوافق مع سياسات واجهات برمجة التطبيقات وبالطريقة التي تعرِضها للمستخدمين في إجراءات تطبيقك و في سياسة الخصوصية.
- يمكنك الرجوع إلى مستندات واجهة برمجة التطبيقات للاطّلاع على مزيد من المعلومات عن كل نطاق، بما في ذلك حالة sensitive or restricted التطبيق المحتملة.
- يجب الإفصاح عن جميع النطاقات التي يستخدمها تطبيقك في . يتم تجميع النطاقات التي تحدّدها في فئات حساسة أو مقيّدة لإبراز أي عملية إثبات ملكية إضافية مطلوبة.
- ابحث عن أفضل نطاق يتطابق مع البيانات المستخدَمة في عملية الدمج، وتعرَّف على استخدامها، وأكِّد مجددًا أنّ كل شيء لا يزال يعمل في بيئة الاختبار، ثم استعد لإرساله إلى فريق التحقّق.
احرص على تضمين الوقت اللازم لإكمال عملية إثبات الهوية في خطة إطلاق تطبيقك أو أي ميزات جديدة تتطلّب نطاقًا جديدًا. يتم تطبيق أحد هذه المتطلّبات الإضافية إذا كان التطبيق: يصل إلى بيانات مستخدمي Google أو لديه القدرة على الوصول إليها من خادم أو من خلاله. في هذه الحالات، يجب أن يخضع النظام لتقييم أمان سنوي من قِبل جهة تقييم خارجية مستقلة معتمدة من Google. لهذا السبب، قد تستغرق عملية إثبات إمكانية الوصول إلى النطاقات المحظورة عدة أسابيع. يُرجى العِلم أنّه على جميع التطبيقات إكمال خطوة إثبات هوية العلامة التجارية أولاً، والتي تستغرق عادةً من يومَين إلى 3 أيام عمل، إذا تغيّرت معلومات العلامة التجارية منذ آخر عملية إثبات هوية تمت الموافقة عليها لشاشة طلب موافقة OAuth.
أنواع التطبيقات المسموح بها
يمكن لأنواع معيّنة من التطبيقات الوصول إلى نطاقات محدودة لكل منتج. يمكنك العثور على أنواع التطبيقات في صفحة المطوّر على Google الخاصة بالمنتج (على سبيل المثال، سياسة Gmail API).
تقع على عاتقك مسؤولية فهم نوع تطبيقك وتحديده. ومع ذلك، إذا لم تكن متأكّدًا من نوع تطبيقك، يمكنك عدم تحديد أي خيارات عند الإجابة عن السؤال ما هي الميزات التي ستستخدمها؟ عند إرسال التطبيق لإثبات ملكيته. سيحدّد فريق التحقّق في Google API نوع التطبيق بعد ذلك.
تقييم الأمان
يجب أن يخضع كل تطبيق يطلب الوصول إلى البيانات المحظورة لمستخدمي Google ولديه إمكانية الوصول إلى البيانات من خادم تابع لجهة خارجية أو من خلاله لتقييم أمان على أيدي فريق تقييم أمني معتمَد من Google. يساعد هذا التقييم في الحفاظ على أمان بيانات مستخدمي Google من خلال التأكّد من أنّ جميع التطبيقات التي تصل إلى بيانات مستخدمي Google تُظهر إمكانية التعامل مع البيانات بأمان وحذف بيانات المستخدمين بناءً على طلبهم.
لتوحيد عملية تقييم الأمان، نستخدم تحالف App Defense Alliance و إطار عمل تقييم أمان تطبيقات السحابة الإلكترونية (CASA).
كما ذكرنا سابقًا، للحفاظ على إمكانية الوصول إلى أي نطاقات محدودة تم إثبات ملكيتها، يجب إعادة إثبات ملكية التطبيقات للامتثال وإكمال تقييم الأمان كل 12 شهرًا على الأقل بعد تاريخ الموافقة على خطاب التقييم الخاص بالمقيّم. إذا كان تطبيقك يضيف نطاقًا جديدًا محظورًا، قد يحتاج تطبيقك إلى إعادة تقييم لتغطية النطاق الإضافي إذا لم يكن مضمّنًا في تقييم أمان سابق.
يرسل إليك فريق المراجعة في Google رسالة إلكترونية عندما يحين وقت إعادة اعتماد تطبيقك. للتأكّد من إرسال إشعار إلى الأعضاء الصحيحين في فريقك بشأن هذا الإجراء التنفيذي السنوي، يمكنك ربط حسابات إضافية على Google بمشروعك بصفتك مالكًا أو محرِّرًا. ويساعد ذلك أيضًا في إبقاء عناوين البريد الإلكتروني المخصّصة للتواصل مع فريق دعم المستخدمين والمطوّرين محدّثة باستمرار، والتي تم تحديدها في Google OAuth .
خطوات التحضير لإثبات الملكية
على جميع التطبيقات التي تستخدم Google APIs لطلب الوصول إلى البيانات اتّباع الخطوات التالية لإكمال عملية إثبات ملكية العلامة التجارية:
- تأكَّد من أنّ تطبيقك لا يندرج ضمن أيّ من حالات الاستخدام الواردة في القسم استثناءات لمتطلبات إثبات الهوية.
- تأكَّد من أنّ تطبيقك يمتثل لمتطلبات وضع العلامة التجارية لواجهة برمجة التطبيقات أو المنتج المرتبط. على سبيل المثال، اطّلِع على إرشادات وضع العلامة التجارية لنطاقات "تسجيل الدخول باستخدام حساب Google".
- أثبِت ملكية النطاقات المعتمَدة لمشروعك ضمن Google Search Console. استخدِم حساب Google مرتبطًا بمشروعك بصفتك مالكًا أو محرِّرًا.
- تأكَّد من أنّ جميع معلومات العلامة التجارية في شاشة موافقة OAuth، مثل اسم التطبيق وعنوان البريد الإلكتروني لقسم الدعم ومعرّف الموارد المنتظم للصفحة الرئيسية ومعرّف الموارد المنتظم لسياسة الخصوصية وما إلى ذلك، تمثّل هوية التطبيق بدقة.
متطلبات الصفحة الرئيسية للتطبيق
تأكَّد من أنّ صفحتك الرئيسية تستوفي المتطلبات التالية:
- يجب أن تكون صفحتك الرئيسية متاحة للجميع، وليس فقط للمستخدمين الذين سجّلوا الدخول إلى موقعك الإلكتروني.
- يجب أن تكون صلة صفحتك الرئيسية بالتطبيق قيد المراجعة واضحة.
- لا تُعتبَر الروابط المؤدية إلى بطاقة بيانات تطبيقك على "متجر Google Play" أو صفحته على Facebook الصفحات الرئيسية الصالحة للتطبيقات.
متطلبات رابط سياسة خصوصية التطبيق
يجب التأكّد من أنّ سياسة الخصوصية في تطبيقك تستوفي المتطلبات التالية:
- يجب أن تكون سياسة الخصوصية مرئية للمستخدمين وأن تكون مستضافة في النطاق نفسه الذي تقع فيه الصفحة الرئيسية لتطبيقك، وأن يتم ربطها في شاشة موافقة OAuth الخاصة بالملف الشخصي على . يُرجى العِلم أنّ الصفحة الرئيسية يجب أن تتضمّن وصفًا لوظائف التطبيق، بالإضافة إلى روابط تؤدي إلى سياسة الخصوصية وبنود الخدمة الاختيارية.
- يجب أن تفصح سياسة الخصوصية عن الطريقة التي يصل بها تطبيقك إلى بيانات مستخدمي 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 المرتبطة التي لديها إذن بتنفيذ عمليات المشروع، ومجموعة من واجهات برمجة التطبيقات المفعّلة، و إعدادات الفوترة والمصادقة والمراقبة لهذه الواجهات. على سبيل المثال، يمكن أن يحتوي المشروع على عميل OAuth واحد أو أكثر، وإعداد واجهات برمجة التطبيقات لاستخدامها من قِبل هؤلاء العملاء، وإعداد شاشة طلب موافقة OAuth التي تظهر للمستخدمين قبل أن يمنحوا الإذن بالوصول إلى تطبيقك.
إذا لم يكن أيّ من عملاء OAuth جاهزًا للإصدار العلني، ننصحك بحذفه من المشروع الذي يطلب إثبات الهوية. يمكنك إجراء ذلك في .
لإرسال طلب التحقّق، اتّبِع الخطوات التالية:
- تأكَّد من امتثال تطبيقك لبنود خدمة Google APIs وسياسة بيانات المستخدمين في خدمات Google API.
- يجب تعديل أدوار "المالك" و"المحرِّر" للحسابات المرتبطة بمشروعك، بالإضافة إلى عناوين البريد الإلكتروني المخصّصة لدعم المستخدمين ومعلومات الاتصال بالمطوّرين في شاشة موافقة OAuth، في . يضمن ذلك إرسال إشعارات إلى أعضاء فريقك المناسبين بأي متطلبات جديدة.
- انتقِل إلى OAuth .
- انقر على زر أداة اختيار المشاريع.
-
في مربّع الحوار اختيار من الذي يظهر، اختَر مشروعك. إذا لم تتمكّن من العثور على مشروعك ولكنك تعرف رقم تعريفه، يمكنك إنشاء عنوان URL في المتصفّح بالشكل التالي:
?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?hl=ar)
البيانات المملوكة للخدمة فقط
إذا كان تطبيقك يستخدم حساب خدمة للوصول إلى بياناته فقط، ولا يصل إلى أي بيانات للمستخدمين (المرتبطة بحساب Google)، لن تحتاج إلى إرسال طلب التحقّق.
للتعرّف على حسابات الخدمة، اطّلِع على حسابات الخدمة في مستندات Google Cloud. للحصول على تعليمات عن كيفية استخدام حساب خدمة، يُرجى الاطّلاع على مقالة استخدام OAuth 2.0 لتطبيقات "خادم إلى خادم".
للاستخدام الداخلي فقط
وهذا يعني أنّه لا يستخدم التطبيق سوى المستخدمين في مؤسستك على Google Workspace أو Cloud Identity. يجب أن يكون المشروع مملوكًا للمؤسسة، ويجب ضبط شاشة موافقة OAuth لنوع مستخدم داخلي. في هذه الحالة، قد يحتاج تطبيقك إلى موافقة مشرف المؤسسة. لمزيد من المعلومات، يُرجى الاطّلاع على ملاحظات إضافية بشأن Google Workspace.
- مزيد من المعلومات حول التطبيقات العلنية والتطبيقات الداخلية
- اطّلِع على كيفية وضع علامة على تطبيقك للإشارة إلى أنّه للاستخدام الداخلي فقط في قسم الأسئلة الشائعة. كيف يمكنني وضع علامة على تطبيقي للإشارة إلى أنّه للاستخدام الداخلي فقط؟
التثبيت على مستوى النطاق
إذا كنت تخطّط لاستهداف تطبيقك لمستخدمي Google Workspace أو Cloud Identity فقط في مؤسستك واستخدام التثبيت على مستوى النطاق دائمًا، لن يتطلّب تطبيقك إثبات ملكيته. ويرجع ذلك إلى أنّ عملية التثبيت على مستوى النطاق تتيح لمشرف النطاق منح التطبيقات التابعة لجهات خارجية والتطبيقات الداخلية إذن الوصول إلى بيانات المستخدمين. إنّ مشرفي المؤسسات هم الحسابات الوحيدة التي يمكنها إضافة التطبيق إلى قائمة سمح لاستخدامه داخل نطاقاتهم.
تعرَّف على كيفية جعل تطبيقك قابلاً للتثبيت على مستوى النطاق في الأسئلة الشائعة يتضمّن تطبيقي مستخدمين لديهم حسابات مؤسسات من نطاق Google Workspace آخر.