پیاده سازی OAuth 2.0 Authentication

YouTube Live Streaming API از پروتکل OAuth 2.0 برای اجازه دسترسی به داده های خصوصی کاربر پشتیبانی می کند. لیست زیر برخی از مفاهیم اصلی OAuth 2.0 را توضیح می دهد:

  • هنگامی که کاربر برای اولین بار سعی می کند از عملکردی در برنامه شما استفاده کند که لازم است کاربر به یک Google Account or YouTube account وارد شود، برنامه شما فرآیند مجوز OAuth 2.0 را آغاز می کند.

  • برنامه شما کاربر را به سرور مجوز Google هدایت می کند. پیوند به آن صفحه scope دسترسی را که برنامه شما برای حساب کاربر درخواست می کند مشخص می کند. scope منابعی را مشخص می کند که برنامه شما می تواند در هنگام عمل به عنوان کاربر تأیید شده، بازیابی، درج، به روز رسانی یا حذف کند.

  • اگر کاربر موافقت کند که برنامه شما را برای دسترسی به آن منابع مجاز کند، Google یک رمز را به برنامه شما برمی گرداند. بسته به نوع برنامه شما، یا توکن را تأیید می کند یا آن را با نوع دیگری از توکن مبادله می کند.

    به عنوان مثال، یک برنامه وب سمت سرور، توکن بازگشتی را با یک نشانه دسترسی و یک توکن تازه سازی مبادله می کند. توکن دسترسی به برنامه اجازه می‌دهد درخواست‌ها را از طرف کاربر تأیید کند، و نشانه تازه‌سازی به برنامه اجازه می‌دهد تا زمانی که نشانه دسترسی اصلی منقضی شود، یک نشانه دسترسی جدید را بازیابی کند.

مهم: برای اینکه بتوانید از مجوز OAuth 2.0 استفاده کنید، باید اعتبارنامه مجوز را در کنسول API Google دریافت کنید .

توجه: یک کانال برای استفاده از ویژگی YouTube Live باید تأیید شود، که به مالک کانال امکان می‌دهد محتوای زنده را در آن کانال پخش کند. اگر درخواست‌های API را از طرف یک کاربر تأیید شده ارسال کنید که کانالش فعال یا واجد شرایط پخش محتوای زنده نیست، API یک خطای insufficientPermissions را برمی‌گرداند.

OAuth 2.0 جریان دارد

Google API از چندین مورد استفاده OAuth 2.0 پشتیبانی می کند:

  • جریان برنامه های وب سمت سرور از برنامه های کاربردی وب پشتیبانی می کند که می توانند به طور ایمن اطلاعات پایدار را ذخیره کنند.
  • جریان برنامه های وب جاوا اسکریپت از برنامه های جاوا اسکریپت در حال اجرا در یک مرورگر پشتیبانی می کند.
  • جریان برنامه های موبایل و دسکتاپ از برنامه های نصب شده روی دستگاه مانند تلفن یا رایانه پشتیبانی می کند.
  • جریان تلویزیون‌ها و دستگاه‌های ورودی محدود از دستگاه‌هایی با قابلیت ورودی محدود مانند کنسول‌های بازی و دوربین‌های ویدیویی پشتیبانی می‌کند.
  • جریان OAuth 2.0 برای جریان حساب سرویس از تعاملات سرور به سرور پشتیبانی می کند که به اطلاعات کاربر دسترسی ندارند. با این حال، YouTube Live Streaming API از این جریان پشتیبانی نمی‌کند. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate a NoLinkedYouTubeAccount error.