YouTube Reporting API و YouTube Analytics API از پروتکل OAuth 2.0 برای مجوز دسترسی به دادههای خصوصی کاربر پشتیبانی میکنند. لیست زیر برخی از مفاهیم اصلی OAuth 2.0 را توضیح میدهد:
وقتی کاربری برای اولین بار سعی میکند از ویژگیهایی در برنامه شما استفاده کند که نیاز به ورود به Google Account or YouTube account کاربر دارد، برنامه شما فرآیند احراز هویت OAuth 2.0 را آغاز میکند.
برنامه شما کاربر را به سرور احراز هویت گوگل هدایت میکند. لینک به آن صفحه،
scopeدسترسی مورد درخواست برنامه شما برای حساب کاربری را مشخص میکند. اینscope، منابعی را که برنامه شما میتواند هنگام ایفای نقش کاربر احراز هویت شده، بازیابی، درج، بهروزرسانی یا حذف کند، مشخص میکند.اگر کاربر با اعطای مجوز به برنامه شما برای دسترسی به آن منابع موافقت کند، گوگل یک توکن به برنامه شما برمیگرداند. بسته به نوع برنامه شما، یا توکن را اعتبارسنجی میکند یا آن را با نوع دیگری از توکن تعویض میکند.
برای مثال، یک برنامه وب سمت سرور، توکن برگشتی را با یک توکن دسترسی و یک توکن بهروزرسانی (refresh token) تعویض میکند. توکن دسترسی به برنامه اجازه میدهد تا درخواستها را از طرف کاربر تأیید کند و توکن بهروزرسانی به برنامه اجازه میدهد تا پس از انقضای توکن دسترسی اصلی، یک توکن دسترسی جدید بازیابی کند.
مهم: برای استفاده از مجوز OAuth 2.0، باید اعتبارنامههای مجوز را در کنسول API گوگل دریافت کنید .
برای جزئیات بیشتر، به راهنمای مجوز OAuth 2.0 مراجعه کنید.
جریانهای OAuth 2.0
API های گوگل از چندین مورد استفاده OAuth 2.0 پشتیبانی میکنند:
- جریان برنامههای وب سمت سرور از برنامههای وب پشتیبانی میکند که میتوانند اطلاعات پایدار را به طور ایمن ذخیره کنند.
- جریان برنامههای وب جاوااسکریپت از برنامههای جاوااسکریپت که در مرورگر اجرا میشوند، پشتیبانی میکند.
- جریان برنامههای موبایل و دسکتاپ از برنامههای نصب شده روی دستگاهی مانند تلفن یا رایانه پشتیبانی میکند.
- جریان 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، توصیه میکنیم محدودههایی را که برنامه شما برای دسترسی به آنها نیاز به مجوز دارد، شناسایی کنید.
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 Analytics را برای محتوای YouTube خود مشاهده کنید |
https://www. googleapis. com/ auth/ yt-analytics. readonly | گزارشهای YouTube Analytics را برای محتوای YouTube خود مشاهده کنید |
API گزارشدهی یوتیوب از حوزههای زیر استفاده میکند:
| دامنه | توضیحات |
|---|---|
https://www. googleapis. com/ auth/ yt-analytics-monetary. readonly | گزارش های پولی و غیر پولی YouTube Analytics را برای محتوای YouTube خود مشاهده کنید |
https://www. googleapis. com/ auth/ yt-analytics. readonly | گزارشهای YouTube Analytics را برای محتوای YouTube خود مشاهده کنید |
سند OAuth 2.0 API Scopes شامل لیست کاملی از scopeهایی است که ممکن است برای دسترسی به APIهای گوگل از آنها استفاده کنید.