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

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

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

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

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

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

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

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

مسارات OAuth 2.0

تتيح Google APIs العديد من حالات استخدام OAuth 2.0:

  • يتيح مسار تطبيقات الويب من جهة الخادم استخدام تطبيقات الويب التي يمكنها تخزين المعلومات الثابتة بأمان.
  • يتيح مسار تطبيقات الويب المستندة إلى JavaScript استخدام تطبيقات 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.