برای صدور مجوز دسترسی به Google API در برنامه وب بااستفاده از کتابخانه جاوا اسکریپت
«سرویسهای مدیریت هویتسنجی Google» (google.accounts.oauth2)، ابتدا باید:
- شناسه کارخواه OAuth 2.0 دریافت کنید.
- صفحه کسب رضایت OAuth و دامنهها را پیکربندی کنید.
- کتابخانه مشتری را بار کنید.
- درصورت تمایل، «خطمشی امنیتی محتوا» (CSP) و «خطمشی بازکننده میانمبدئی» (COOP) را راهاندازی کنید.
دریافت شناسه کارخواه Google API
برای فعال کردن «مجوز حساب Google» در وبسایتتان، ابتدا باید شناسه کارخواه Google API را راهاندازی کنید. مراحل زیر را تکمیل کنید:
- صفحه مشتریان را در «کنسول Google Cloud» باز کنید.
- پروژه Cloud Console ایجاد یا انتخاب کنید. هنگام ایجاد برنامههای تولید، ممکن است چندین پروژه لازم باشد؛ مراحل باقیمانده این بخش را برای هر پروژهای که مدیریت میکنید تکرار کنید.
- روی ایجاد مشتری کلیک کنید و برای نوع برنامه، برنامه وب را انتخاب کنید تا شناسه مشتری جدیدی ایجاد شود. برای استفاده از شناسه کارخواه موجود، یکی از انواع برنامه وب را انتخاب کنید.
شناسه منبع یکسان وبسایتتان را به مبدأهای مجاز JavaScript اضافه کنید. URI فقط شامل طرحواره و نام میزبان کاملاً واجدشرایط است. برای مثال،
https://www.example.com.اگر از مدل کد مجوز با
ux_mode: 'redirect'(یا کدهای مجوز تبادل در نقطه پایانی پسبست) استفاده میکنید، URIهای هدایت خود را به URIهای هدایت مجاز اضافه کنید. شناسههای URI هدایت شامل طرح، نام میزبان کاملاً واجدشرایط، و مسیر است و باید با قوانین اعتبارسنجی شناسه URI هدایت مطابقت داشته باشد. بهعنوان مثال،https://www.example.com/oauth2callback.
پساز تکمیل پیکربندی، شناسه کارخواهی را که ایجاد شده است یادداشت کنید.
این مقدار را در ویژگی client_id هنگام مقداردهی اولیه
initCodeClient() یا initTokenClient() ارسال خواهید کرد. (رمز کارخواه نیز ایجاد میشود که باید آن را محرمانه نگه دارید و فقط برای عملیات تبادل توکن سمت سرور از آن استفاده کنید.)
پیکربندی صفحه کسب رضایت OAuth
وقتی برنامه وب شما بااستفاده از دامنههای OAuth 2.0 درخواست دسترسی به دادههای کاربر را میدهد، Google صفحه رضایتی را نمایش میدهد که به کاربران میگوید کدام برنامه درخواست دسترسی دارد، چه دامنههای دادهای درخواست شده است، و چه شرایطی اعمال میشود.
- صفحه نمانامسازی بخش «پلاتفرم Google Auth» در «کنسول Cloud» را باز کنید.
- اگر درخواست شد، پروژهای را که پیکربندی کردهاید انتخاب کنید.
- فرم نمانامسازی (نام برنامه، نشانواره برنامه، ایمیل پشتیبانی، دامنههای مجاز، پیوند صفحه اصلی برنامه، و پیوند خطمشی رازداری) را تکمیل کنید و روی ذخیره کلیک کنید.
- برای پیکربندی کردن دامنههای Google API که برنامهتان نیاز دارد، به صفحه دسترسی به داده بروید. بهترین روش این است که گسترهها را بهصورت افزایشی و در زمان نیاز به دسترسی درخواست کنید، نه ازقبل.
- وضعیت درستیسنجی خود را بررسی کنید. اگر برنامهتان درخواست دامنههای حساس یا محدودشده دارد، برنامهتان را برای درستیسنجی ارسال کنید. برای جزئیات، به الزامات درستیسنجی OAuth مراجعه کنید.
خطمشی امنیتی محتوا و COOP
اگر برنامه وب شما خطمشی امنیتی محتوا (CSP) را اجرا میکند، به مبدأهای «سرویسهای مدیریت هویتسنجی Google» زیر اجازه دهید:
-
script-src:https://accounts.google.com/gsi/client -
frame-src:https://accounts.google.com/gsi/ -
connect-src:https://accounts.google.com/gsi/
برای جریانهای مجوز بالاپر (initTokenClient یا initCodeClient با
ux_mode: 'popup')، سرایند پاسخ HTTP Cross-Origin-Opener-Policy (COOP) خود را روی same-origin-allow-popups پیکربندی کنید تا پنجره گفتگو بتواند
پاسخ مجوز را به صفحهتان برگرداند.
مراحل بعدی
سپس، کتابخانه کارخواه را در صفحه وب خود بار کنید تا مقداردهی اولیه کارخواه مجوزدهی را شروع کنید.