تنفيذ تفويض OAuth 2.0

يدعم YouTube Reporting API و YouTube Analytics API البروتوكول OAuth 2.0 لتفويض الوصول إلى بيانات المستخدم الخاصة. توضح القائمة التالية بعض المفاهيم الأساسية OAuth 2.0:

  • عندما يحاول المستخدم لأول مرة استخدام ميزات في تطبيقك تتطلب من المستخدم تسجيل الدخول إلى Google Account or YouTube account، يبدأ تطبيقك عملية التفويض OAuth 2.0.

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

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

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

هام: لاستخدام تفويض OAuth 2.0، تحتاج إلى الحصول على بيانات اعتماد التفويض في وحدة تحكم Google API.

لمزيد من التفاصيل، راجع دليل تفويض OAuth 2.0 .

تدفقات OAuth 2.0

تدعم واجهات برمجة تطبيقات جوجل العديد من حالات استخدام OAuth 2.0:

  • يدعم تدفق server-side web apps تطبيقات الويب التي يمكنها تخزين المعلومات الدائمة بشكل آمن.
  • يدعم تدفق JavaScript web apps تطبيقات JavaScript التي تعمل في المتصفح.
  • يدعم تدفق تطبيقات الهاتف المحمول وتطبيقات سطح المكتب التطبيقات المثبتة على جهاز، مثل الهاتف أو الكمبيوتر.
  • يدعم تدفق OAuth 2.0 لأجهزة التلفزيون والأجهزة ذات الإدخال المحدود الأجهزة ذات إمكانيات الإدخال المحدودة، مثل وحدات التحكم في الألعاب وكاميرات الفيديو. The YouTube Reporting and YouTube Analytics APIs do not currently support the OAuth 2.0 flow for devices.
  • يدعم تدفق OAuth 2.0 لحساب الخدمة التفاعلات بين الخوادم التي لا تصل إلى معلومات المستخدم. ومع ذلك، فإن YouTube Reporting API و YouTube Analytics API لا يدعمان هذا التدفق. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate an error.

تحديد نطاقات الوصول

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

قبل البدء في تنفيذ تفويض OAuth 2.0، ننصحك بتحديد النطاقات التي سيحتاج تطبيقك إلى إذن للوصول إليها.

تستخدم واجهة YouTube Analytics API النطاقات التالية:

النطاق الوصف
https://www.googleapis.com/auth/youtube إدارة حسابك في YouTube
https://www.googleapis.com/auth/youtube.readonly عرض حسابك في YouTube
https://www.googleapis.com/auth/youtubepartner عرض وإدارة أصولك والمحتوى المرتبط بها على YouTube
https://www.googleapis.com/auth/yt-analytics-monetary.readonly عرض تقارير "إحصاءات YouTube" المالية وغير المالية للمحتوى في YouTube
https://www.googleapis.com/auth/yt-analytics.readonly عرض تقارير "إحصاءات YouTube" للمحتوى في YouTube

تستخدم واجهة YouTube Reporting API نطاقات الأذونات التالية:

النطاق الوصف
https://www.googleapis.com/auth/yt-analytics-monetary.readonly عرض تقارير "إحصاءات YouTube" المالية وغير المالية للمحتوى في YouTube
https://www.googleapis.com/auth/yt-analytics.readonly عرض تقارير "إحصاءات YouTube" للمحتوى في YouTube

يحتوي مستند نطاقات واجهة برمجة التطبيقات OAuth 2.0 على قائمة كاملة بالنطاقات التي يمكنك استخدامها للوصول إلى Google APIs.