على المستخدمين السماح بمشاريع النصوص البرمجية التي يمكنها الوصول إلى بياناتهم أو تتصرف على بالنيابة عنك. عندما يقوم المستخدم بتشغيل نص برمجي يتطلب إذنًا لأول تعرض واجهة المستخدم موجهًا لبدء تدفق التفويض.
أثناء هذا المسار، تخبر واجهة المستخدم المستخدم بما يطلبه النص البرمجي إذنًا. للقيام به. على سبيل المثال، قد يحتاج النص البرمجي إلى إذن لقراءة الرسائل الإلكترونية أو إنشاء الأحداث في التقويم. مشروع النص البرمجي يحدد هذه الأذونات الفردية بصفتها نطاقات OAuth.
في معظم النصوص البرمجية، ترصد "برمجة التطبيقات" تلقائيًا النطاقات. مطلوبة من أجلك؛ يمكنك عرض النطاقات التي يستخدمها النص البرمجي. في أي وقت. يمكنك أيضًا ضبط النطاقات صراحةً. في بيانك باستخدام سلاسل عناوين URL. الإعداد والنطاقات مطلوبة أحيانًا لتطبيقات معينة مثل الإضافات، نظرًا لأنه يجب على التطبيقات المنشورة دائمًا استخدام أضيق النطاقات الممكنة.
أثناء تدفق التفويض، يقدم "برمجة تطبيقات Google" محتوى سهل القراءة للمستخدم
أوصاف النطاقات المطلوبة للمستخدم. على سبيل المثال، إذا كان النص
يحتاج إلى إذن بالقراءة فقط إلى جداول البيانات، فقد يتضمن البيان النطاق
https://www.googleapis.com/auth/spreadsheets.readonly
خلال
مسار التفويض، يطلب نص برمجي بهذا النطاق من المستخدم السماح
Google على "عرض جداول بيانات Google".
وتضم بعض النطاقات الأخرى. على سبيل المثال، عند تفويض النطاق
يسمح https://www.googleapis.com/auth/spreadsheets
بالوصول إلى القراءة والكتابة إلى
جداول البيانات.
نطاق العرض
يمكنك معرفة النطاقات التي يتطلبها مشروع النص البرمجي حاليًا من خلال تنفيذ التالي:
- افتح مشروع النص البرمجي.
- على يمين الصفحة، انقر على نظرة عامة.
- اطّلِع على النطاقات ضمن نطاقات OAuth للمشروع.
إعداد نطاقات صريحة
تحدِّد "برمجة تطبيقات Google" تلقائيًا النطاقات التي يحتاجها النص البرمجي. عن طريق مسح رمزها بحثًا عن استدعاءات الدوال التي تتطلبها. بالنسبة لمعظم النصوص البرمجية هذا كافية وتوفر الوقت، ولكن بالنسبة إلى الإضافات المنشورة، في التطبيقات وGoogle Chat والمكالمات الواردة إلى Google Chat API، عليك التمرّن أكثر. التحكم المباشر في النطاقات.
تحدِّد "برمجة التطبيقات" أحيانًا نطاقات متساهلة للغاية للمشاريع تلقائيًا. قد يعني ذلك أن النص البرمجي يطلب من المستخدم أكثر مما يحتاج، وهو أمر سيئ التدريب. بالنسبة إلى النصوص البرمجية المنشورة، يجب استبدال النطاقات الواسعة محدودة أكثر تتناول احتياجات النص وليس أكثر من ذلك.
يمكنك تحديد النطاقات التي يستخدمها مشروع النص البرمجي بشكل صريح عن طريق التعديل
ملف البيان الخاص به. حقل البيان
oauthScopes
هي مصفوفة من جميع النطاقات التي يستخدمها المشروع. لضبط
بشكل كامل، قم بما يلي:
- افتح مشروع النص البرمجي.
- على يمين الصفحة، انقر على رمز إعدادات المشروع .
- حدِّد زر إظهار "appsscript.json" ملف البيان في المحرِّر.
- على يمين الصفحة، انقر على رمز المحرِّر .
- على يمين الصفحة، انقر على ملف
appsscript.json
. - حدِّد موقع حقل المستوى الأعلى المسمى
oauthScopes
. إذا لم تكن موجودة، فيمكنك إضافتها. - يحدّد الحقل
oauthScopes
صفيفًا من السلاسل. لإعداد النطاقات يستخدمه مشروعك، استبدل محتوى هذه الصفيفة بالنطاقات التي نريد استخدامها. على سبيل المثال:{ ... "oauthScopes": [ "https://www.googleapis.com/auth/spreadsheets.readonly", "https://www.googleapis.com/auth/userinfo.email" ], ... }
- في أعلى الصفحة، انقر على "حفظ" .
التحقّق من OAuth
بعض نطاقات OAuth حساسة لأنها تسمح بالوصول إلى بيانات المستخدمين: إذا كان مشروع النص البرمجي يستخدم نطاقات تسمح بالوصول إلى بيانات المستخدمين، أن يمر المشروع التحقّق من عميل OAuth قبل أن تتمكن من نشره بشكل علني كتطبيق ويب أو الإضافية. لمزيد من المعلومات، يُرجى الاطّلاع على الأدلة التالية:
- التحقق من عميل OAuth لبرمجة التطبيقات
- التطبيقات التي لم يتم التحقّق منها
- الأسئلة الشائعة حول إثبات الملكية باستخدام OAuth
- خدمة Google APIs: سياسة بيانات المستخدمين
النطاقات المشروطة
بالإضافة إلى النطاقات الحساسة، يتم تصنيف بعض النطاقات محظور وتخضع لقواعد إضافية تساعد في حماية بيانات المستخدمين. إذا كنت تنوي نشر تطبيق ويب أو إضافة تستخدم واحدًا أو أكثر نطاقات مقيدة، يجب أن يلتزم التطبيق بجميع القيود المحددة قبل نشرها
راجِع القائمة الكاملة للنطاقات المحظورة. قبل محاولة النشر إذا كان تطبيقك يستخدم أيًا منها، عليك الالتزام مع متطلبات إضافية لنطاقات محدَّدة لواجهة برمجة التطبيقات قبل النشر