تنفيذ تفويض 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.

لمزيد من التفاصيل، يُرجى الاطِّلاع على دليل تفويض 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.