پیوند هویت و حساب

از احراز هویت سرویس‌های بازی‌های گوگل پلی برای ساده‌سازی تجربه احراز هویت پلتفرم کاربر برای بازی خود استفاده کنید. کیت توسعه نرم‌افزار سرویس‌های بازی‌های پلی را برای فعال‌سازی احراز هویت، مقداردهی اولیه کنید، که نیاز به یک جریان احراز هویت پلتفرم جداگانه را از بین می‌برد.

حساب‌های کاربری را برای فعال کردن پیوستگی و قابلیت پخش بین دستگاهی پیوند دهید

بازیکنان با بازی‌های مورد علاقه خود در دستگاه‌ها و پلتفرم‌های مختلفی از جمله موبایل، تبلت و رایانه‌های شخصی سرگرم می‌شوند. انتظار اصلی این بازیکنان این است که بتوانند بدون هیچ مشکلی، صرف نظر از دستگاهی که انتخاب می‌کنند، دقیقاً از همان جایی که بازی را متوقف کرده‌اند، به بازی ادامه دهند.

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

برای تسهیل پیوستگی بی‌وقفه و بازی بین دستگاه‌های مختلف، باید دو ویژگی کلیدی را پیاده‌سازی کنید:

فرآیند احراز هویت سرویس‌های بازی‌های Play گزینه‌های انعطاف‌پذیری برای شناسه‌های بازیکن ارائه می‌دهد. این گزینه‌ها به شما امکان می‌دهند سرویس‌های بازی‌های Play را با راهکار هویتی موجود خود ادغام کنید.

ادغام جدید سرویس‌های بازی‌های پلی

برای بازی‌هایی که از قبل با سرویس‌های بازی‌های Play یکپارچه نشده‌اند، Recall API با مدیریت ارتباطات حساب‌ها و ذخیره ارتباط بین حساب بازی کاربر و حساب سرویس‌های بازی‌های Play او، تنظیمات backend را ساده می‌کند.

پیوند حساب با استفاده از Recall API

رابط برنامه‌نویسی کاربردی (API) Recall، راهکار پیشنهادی برای پیوند دادن حساب‌های کاربری در بازی‌های چند پلتفرمی است. این API به‌ویژه برای بازی‌هایی که از سرویس‌های Play Games موجود استفاده نمی‌کنند یا بازی‌هایی که از راهکارهای احراز هویت پلتفرم دیگری فراتر از سرویس‌های Play Games استفاده می‌کنند، مفید است.

API Recall با مدیریت ارتباط حساب‌ها، تنظیمات بخش مدیریت بازی شما را ساده می‌کند.

  • ساده‌سازی بخش مدیریت: این API، تنظیمات بخش مدیریت بازی شما را برای اتصال حساب کاربری ساده می‌کند.
  • ارتباطات مدیریت‌شده توسط Play: Play ارتباط بین حساب‌های بازی کاربران (از جمله حساب‌های شخص ثالث) و حساب‌های Play Games Services آنها را ذخیره می‌کند.
  • بازیابی پیشرفت: توسعه‌دهندگان توکن‌های بازیابی (Recall tokens) را تولید و به Play ارسال می‌کنند که سپس می‌توان آن‌ها را برای بازیابی پیشرفت بازی کاربر بازیابی کرد.

هنگام پیاده‌سازی API Recall، توسعه‌دهندگان باید تأیید کنند که توکن‌های Recall رشته‌های مبهم هستند. این توکن‌ها باید عاری از هرگونه اطلاعات حساس یا شخصی قابل شناسایی (مانند نام، آدرس ایمیل یا اطلاعات جمعیتی) در مورد گیمرها باشند.

بازی‌ها باید هنگام تولید توکن‌های Recall از الگوریتم‌های رمزگذاری قوی استفاده کنند تا از داده‌های کاربر محافظت کرده و امنیت را حفظ کنند.

برای کسب اطلاعات بیشتر در مورد نحوه عملکرد Recall، به Recall API مراجعه کنید.

برای پیاده‌سازی ویژگی Recall API، به بخش «ادغام Recall API سرویس‌های بازی‌های Play در بازی خود» مراجعه کنید.

مدیریت چندین حساب با Recall API

هنگام مدیریت چندین حساب کاربری برای یک کاربر، می‌توانید با هر حساب کاربری به عنوان یک شخصیت مجزا رفتار کنید. این رویکرد امکان تجربیات سفارشی‌سازی‌شده را بر اساس زمینه خاص کاربر فراهم می‌کند.

برای پیاده‌سازی این رویکرد، مراحل زیر را دنبال کنید:

اگرچه گزینه‌های مختلفی برای سیاست‌گذاری (مانند بازیابی خودکار آخرین حساب کاربری) در دسترس است، اکیداً توصیه می‌کنیم که یک اعلان به کاربر نمایش داده شود. این اعلان باید از آنها بخواهد که حسابی را که می‌خواهند بازیابی کنند انتخاب کنند و یک تجربه کاربری واضح و کاربرپسند ارائه دهد.

ادغام سرویس‌های بازی‌های پلی موجود

این بخش نحوه ادغام بازی شما با سرویس‌های بازی‌های Play را با اتصال حساب‌های بازیکن توضیح می‌دهد. یاد بگیرید که چگونه از شناسه‌های بازیکن برای شناسایی بازیکنان احراز هویت شده و مدیریت چندین حساب بازی برای یک کاربر سرویس‌های بازی‌های Play استفاده کنید.

اتصال با Player_id

شناسه بازیکن، شناسه‌ای برای حساب کاربری سرویس بازی‌های پلی است. بازی شما می‌تواند شناسه بازیکن هر بازیکنی را که با استفاده از سرویس بازی‌های پلی در بازی شما احراز هویت شده است، بازیابی کند.

بازی‌هایی که بخش مدیریت آنها با Play Games Services Player_Id تنظیم شده است یا بازی‌هایی که نیاز به پشتیبانی برای کاربران کودک دارند، باید Player_Id استفاده کنند و حساب‌های بازی و 3P خود را با Player_Id متصل کنند.

درک کنید که شناسه‌های بازیکن چگونه رفتار می‌کنند:

  • ثبات در یک بازی: شناسه بازیکن برای یک کاربر در دستگاه‌های مختلف، زمانی که یک بازی را انجام می‌دهد، ثابت می‌ماند.
  • ناهماهنگی بین بازی‌ها: شناسه‌های بازیکن همیشه وقتی کاربر بازی‌های مختلفی انجام می‌دهد، ثابت نیستند.

برای اطلاعات بیشتر، به شناسه‌های پخش‌کننده نسل بعدی مراجعه کنید.

مدیریت چندین حساب کاربری برای هر کاربر با قابلیت اتصال

برای پیوند دادن چندین حساب کاربری به یک حساب کاربری Play Games Services، یک نگاشت یک به چند در جدول خود ایجاد کنید.

هویت گوگل چند پلتفرمی با استفاده از ورود با گوگل

ورود با گوگل (SiwG) راهکار اصلی احراز هویت گوگل است که به توسعه‌دهندگان بازی اجازه می‌دهد اطلاعات پروفایل بازیکن خود شامل نام، آدرس ایمیل و تصویر پروفایل را به صورت ایمن دریافت کنند.

یکی از مزایای کلیدی ورود با گوگل، دسترسی گسترده به آن در پلتفرم‌های مختلف، از جمله وب ، اندروید و iOS است. این سرویس، یک تجربه ورود سریع، امن و آشنا را فراهم می‌کند که بازیکنان از قبل آن را می‌شناسند و به آن اعتماد دارند.

اتصال با sub فیلد توکن Google ID

برای ایجاد یک تجربه یکپارچه بین پلتفرمی، می‌توانید یک استراتژی احراز هویت پیاده‌سازی کنید که سیستم حساب بازی شما را به یک شناسه منحصر به فرد حساب گوگل متصل کند. این رویکرد از احراز هویت ساده‌شده Play Games Services در اندروید بهره می‌برد، در حالی که در پلتفرم‌های دیگر مانند iOS و وب از استاندارد ورود با Google SDK استفاده می‌کند.

کلید این استراتژی، فیلد sub از توکن شناسه گوگل است. فیلد sub (یا "موضوع") یک شناسه منحصر به فرد و پایدار برای حساب کاربری گوگل است. شما از این شناسه به عنوان "پل" برای اتصال تمام جلسات یک بازیکن به یک حساب بازی واحد در بک‌اند خود استفاده خواهید کرد.

جریان سطح بالا به شرح زیر است:

  • در اندروید: بازی شما کیت توسعه نرم‌افزاری خدمات بازی‌های Play را راه‌اندازی می‌کند تا احراز هویت را به طور خودکار در دستگاه‌های اندروید فعال کند. شما یکپارچه‌سازی خدمات بازی‌های Play نسخه ۲ خود را طوری پیکربندی می‌کنید که سه حوزه ورود به سیستم را درخواست کند : email ، profile و openid . اینها همان حوزه‌هایی هستند که یک کیت توسعه نرم‌افزاری استاندارد ورود با Google درخواست می‌کند. این به شما امکان می‌دهد یک توکن شناسه را که شامل فیلد sub بازیکن است، بازیابی کنید.
  • در وب و iOS: بازی شما از SDK های استاندارد ورود با گوگل برای وب و ورود با گوگل برای iOS و macOS استفاده می‌کند. وقتی کاربر وارد سیستم می‌شود، SiwG SDK یک توکن شناسه ارائه می‌دهد که شامل فیلد sub کاربر نیز می‌شود.
  • اتصال حساب کاربری: از آنجا که کاربر با یک حساب گوگل در هر دو پلتفرم وارد سیستم می‌شود، فیلد sub که دریافت می‌کنید یکسان خواهد بود. سپس می‌توانید با اطمینان این مقدار sub را به شناسه کاربری داخلی خود در راهکار هویت خود متصل کنید و یک تجربه کاربری یکپارچه ایجاد کنید.

ادغام در اندروید

در اندروید، شما از SDK سرویس‌های بازی‌های گوگل پلی به عنوان نقطه ادغام اصلی استفاده خواهید کرد. نکته کلیدی این است که کلاینت ورود به سیستم سرویس‌های بازی‌های گوگل پلی خود را طوری پیکربندی کنید که محدوده‌های ورود اضافی را درخواست کند. این به شما امکان می‌دهد یک کد احراز هویت سمت سرور را بازیابی کنید، که بک‌اند شما می‌تواند آن را با یک توکن شناسه حاوی اطلاعات کاربر از جمله sub منحصر به فرد مبادله کند.

در سطح بالا، پیاده‌سازی شامل موارد زیر است:

  1. تنظیم شناسه‌های کلاینت در یک پروژه یکپارچه: قبل از ادغام، باید سرویس‌های بازی‌های Play را در کنسول Google Play تنظیم کنید تا شناسه‌های کلاینت OAuth 2.0 خود را دریافت کنید.

  2. پیکربندی سرویس‌های بازی‌های Play: قبل از شروع، ابتدا باید بازی خود را در کنسول Google Play اضافه کنید و احراز هویت پلتفرم سرویس‌های بازی‌های Play را با بازی خود ادغام کنید.

  3. دکمه ورود با گوگل را اضافه کنید: در صفحه ورود به سیستم یا صفحه تنظیمات کاربری بازی خود، دکمه "ورود با گوگل" را اضافه کنید. این دکمه باعث فعال شدن ورود یا خروج می‌شود. هنگام ایجاد این دکمه، توصیه می‌شود دستورالعمل‌های برندسازی ورود با گوگل را دنبال کنید. حداقل، دکمه باید به وضوح "گوگل" یا "ورود با گوگل" را نمایش دهد. لینک دستورالعمل‌ها همچنین دارایی‌های UX قابل دانلودی را ارائه می‌دهد که سازگار هستند و می‌توانند در بازی شما استفاده شوند.

  4. درخواست کد تأیید سرور با محدوده‌های ورود: وقتی بازیکن روی دکمه کلیک می‌کند، بازی شما یک کد تأیید سرور یکبار مصرف درخواست می‌کند. مهم‌ترین مرحله، پیکربندی این درخواست برای شامل شدن محدوده‌های ورود به سیستم زیر است: EMAIL ، PROFILE و OPEN_ID .

    نحوه پیکربندی این مورد به محیط توسعه شما بستگی دارد:

  5. تبادل کد احراز هویت و تأیید توکن شناسه در بک‌اند: کد احراز هویت مرحله قبل را به سرور بک‌اند خود ارسال کنید. در سرور، راهنمای استاندارد جریان تبادل کد OAuth 2.0 را دنبال کنید تا کد را با یک توکن شناسه، توکن دسترسی و توکن به‌روزرسانی جایگزین کنید. همانطور که در راهنما توضیح داده شده است، باید توکن شناسه را در سرور خود تأیید کنید.

  6. اتصال sub : پس از تأیید موفقیت‌آمیز توکن شناسه، sub را از محتوای آن استخراج کنید. از این sub به عنوان کلید منحصر به فرد برای هویت گوگل در راهکار هویت خود استفاده کنید.

    • اگر این sub از قبل در پایگاه داده شما وجود دارد ، کاربر قبلاً پیوند داده است. او را به حساب بازی مربوطه‌اش وارد کنید.

    • اگر این sub وجود ندارد ، می‌توانید یک حساب کاربری جدید در سیستم حساب بازی خود مرتبط با این sub ایجاد کنید، یا با تطبیق اطلاعات کاربری (مانند آدرس ایمیل) ارائه شده در شناسه توکن، آن را به یک حساب کاربری موجود در سیستم حساب خود پیوند دهید.

ادغام در iOS، وب و سایر پلتفرم‌ها

در پلتفرم‌هایی غیر از اندروید، iOS، وب یا کامپیوتر شخصی، از روش استاندارد ورود با SDKهای گوگل استفاده خواهید کرد. هدف همان روند اندروید است: دریافت امن یک توکن شناسه گوگل، ارسال آن به بک‌اند و استفاده از فیلد sub برای پیوند دادن حساب.

در سطح بالا، پیاده‌سازی شامل موارد زیر است:

  1. یکپارچه‌سازی سمت کلاینت: برای یکپارچه‌سازی «ورود با Google SDK» برای پلتفرم خود، مستندات رسمی را دنبال کنید. این راهنماها جریان کامل سمت کلاینت، از رندر کردن دکمه «ورود با Google» گرفته تا بازیابی توکن شناسه را پوشش می‌دهند.

  2. منطق بک‌اند: توکن شناسه (یا کد احراز هویت) را به بک‌اند خود ارسال کنید. سپس سرور شما دقیقاً همان منطق تأیید و اتصال sub را که در مراحل ۴ و ۵ بخش «یکپارچه‌سازی در اندروید» توضیح داده شده است، انجام می‌دهد.

از آنجا که فیلد sub همه این جریان‌های ورود با گوگل با فیلد بازیابی شده از جریان سرویس‌های بازی‌های گوگل پلی در اندروید (برای همان حساب گوگل) یکسان است، این فرآیند با موفقیت حساب کاربر را در همه پلتفرم‌ها پیوند می‌دهد.