نطاقات التفويض

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

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

نبذة عن بروتوكولات التفويض

يجب أن يستخدم تطبيقك OAuth 2.0 للسماح بالطلبات. ولا يُسمح باستخدام أي بروتوكولات أخرى للموافقة على الطلبات. إذا كان تطبيقك يستخدم ميزة تسجيل الدخول باستخدام حساب Google، ستتم معالجة بعض جوانب عملية الموافقة على الطلبات نيابةً عنك.

الموافقة على الطلبات باستخدام OAuth 2.0

يجب أن يوافق مستخدم مصادَق عليه على كلّ الطلبات الموجّهة إلى Google Photos Library API.

تختلف تفاصيل عملية الموافقة على الطلبات لبروتوكول OAuth 2.0 نوعًا ما حسب نوع التطبيق الذي تكتبه. وتسري العملية العامة التالية على كل أنواع التطبيقات:

  1. عند إنشاء التطبيق، يجب تسجيله باستخدام وحدة التحكم في واجهة Google API. ويوفر محرك البحث Google المعلومات التي ستحتاجها في ما بعد، مثل معرّف العميل وسر العميل.
  2. فعِّل واجهة برمجة التطبيقات لمكتبة "صور Google" في وحدة تحكُّم واجهة برمجة تطبيقات Google. (يمكنك تخطّي هذه الخطوة إذا كانت واجهة برمجة التطبيقات غير مدرَجة في وحدة التحكم في واجهة Google API.)
  3. إذا احتاج التطبيق الدخول إلى بيانات المستخدِم، يطلب التطبيق من Google نطاقًا معينًا للدخول.
  4. يعرض Google شاشة الموافقة للمستخدم، ويطلب منه السماح لتطبيقك بطلب بعض بياناته.
  5. عند موافقة المستخدِم، يمنح Google تطبيقك رمز دخول قصير الأجل.
  6. يطلب تطبيقك بيانات المستخدِم، من خلال إرفاق رمز الدخول بالطلب.
  7. يعرض Google البيانات المطلوبة بعد تحققه من صلاحية طلبك والرمز المميز.

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

في ما يلي معلومات عن نطاق OAuth 2.0 في واجهة برمجة تطبيقات مكتبة "صور Google":

النطاق المعنى
https://www.googleapis.com/auth/photoslibrary.readonly

إذن بالقراءة فقط:

إدراج عناصر من المكتبة وجميع الألبومات والوصول إلى كل ملفات الوسائط وألبومات قائمة التي يملكها المستخدم، بما في ذلك تلك التي تمت مشاركتها معه

بالنسبة إلى الألبومات التي يشاركها المستخدم، لا يتم عرض خصائص المشاركة إلا إذا تم أيضًا منح نطاق photoslibrary.sharing.

لا تتوفّر السمة shareInfo للألبومات وcontributorInfo للسمة mediaItems إلا إذا تم منح النطاق photoslibrary.sharing أيضًا.

لمزيد من المعلومات، يُرجى الاطّلاع على مشاركة الوسائط.

https://www.googleapis.com/auth/photoslibrary.appendonly

إذن الكتابة فقط:

إمكانية تحميل وحدات البايت، وإنشاء ملفات الوسائط، وإنشاء الألبومات، وإضافة التحسينات يسمح فقط بإنشاء وسائط جديدة في مكتبة المستخدم وفي الألبومات التي ينشئها التطبيق.

https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata

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

من المفترض أن يتم طلبها مع نطاق photoslibrary.appendonly.

https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata

الإذن بتعديل المحتوى فقط.

الإذن بالوصول لتغيير هذه التفاصيل في الألبومات وعناصر الوسائط التي أنشأها المطوّر:

https://www.googleapis.com/auth/photoslibrary.sharing

الوصول إلى ميزة مشاركة المكالمات

الإذن بالوصول لإنشاء ألبوم ومشاركته وتحميل عناصر الوسائط إليه والانضمام إلى ألبوم مشترَك

https://www.googleapis.com/auth/photoslibrary

خيار غير مقترَح اطلب الوصول إلى النطاقات التي تحتاجها فقط باستخدام إذن إضافي.

الوصول إلى النطاقَين photoslibrary.appendonly وphotoslibrary.readonly: لا يشمل إذن الوصول إلى photoslibrary.sharing أو photoslibrary.edit.

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

نصيحة: يمكن لمكتبات عملاء Google APIs معالجة جزء من عملية السماح بالنيابة عنك. وتتوفّر هذه المكتبات للعديد من لغات البرمجة، ويمكنك الاطّلاع على صفحة المكتبات والنماذج للحصول على مزيد من التفاصيل.

اختيار النطاقات

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

طلب النطاقات بشكل متزايد

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

حسابات الخدمة

لا تتوافق واجهة برمجة التطبيقات Library API مع حسابات الخدمة. ويجب أن يستخدم تطبيقك مسارات OAuth 2.0 الأخرى المتاحة مثل OAuth 2.0 لتطبيقات خادم الويب أو OAuth 2.0 لتطبيقات الأجهزة الجوّالة وأجهزة سطح المكتب.