نظرة عامة

اختيار مسار عملية الدمج

اختَر المسار الذي يناسب احتياجاتك على أفضل وجه:

المسار الأفضل لـ مزيد من المعلومات
بروتوكول Universal Commerce Protocol ‏ (UCP) التجّار وبائعي التجزئة مستندات بروتوكول UCP
ربط الحساب العادي المنزل الذكي والتلفزيون وYouTube مستندات Google

تتيح ميزة "ربط الحساب" لمستخدمي حسابات Google الاتصال بخدماتك بسرعة وسلاسة وأمان. يمكنك اختيار استخدام ميزة "ربط حساب Google" لمشاركة بيانات المستخدم من منصتك مع تطبيقات Google وخدماتها.

يتيح لك بروتوكول OAuth 2.0 الآمن ربط حساب Google الخاص بالمستخدم بحسابه على منصتك بأمان، ما يمنح تطبيقات Google وأجهزتها إذن الوصول إلى خدماتك.

يمكن للمستخدمين ربط حساباتهم أو إلغاء ربطها، ويمكنهم إنشاء حساب جديد على منصتك من خلال ميزة "ربط حساب Google" إذا أرادوا ذلك.

حالات الاستخدام

في ما يلي بعض الأسباب التي تدفعك إلى استخدام ميزة "ربط حساب Google":

  • مشاركة بيانات المستخدم من منصتك مع تطبيقات Google وخدماتها

  • التكامل مع "تسوق Google" وواجهات الذكاء الاصطناعي (بحث Google وGemini) باستخدام الـ Universal Commerce Protocol ‏ (UCP).

  • تشغيل محتوى الفيديو والأفلام باستخدام Google TV.

  • إدارة أجهزة المنزل الذكي من Google المتصلة والتحكّم فيها باستخدام تطبيق Google Home و"مساعد Google"، مثل "Ok Google، شغِّل الأضواء".

  • إنشاء تجارب ووظائف مخصّصة للمستخدمين في "مساعد Google" باستخدام المهام المحادثة، "Ok Google، اطلب قهوتي المعتادة من ستاربكس"

  • السماح للمستخدمين بكسب المكافآت من خلال مشاهدة أحداث البث المباشر المؤهلة على YouTube بعد ربط حساب Google الخاص بهم بحساب على منصة شريكة تقدّم المكافآت .

  • ملء الحسابات الجديدة مسبقًا أثناء عملية الاشتراك بالبيانات التي تمت مشاركتها بموافقة المستخدم من ملف شخصي على حساب Google.

الإمكانات والمتطلبات

يحدّد الجدول التالي الدعم والتوصيات لكل مسار من مسارات الربط.

مسار الربط الميزات العادية ميزات بروتوكول UCP
ميزة "التبديل إلى التطبيق" خيار ننصح به خيار ننصح به
الربط السلس خيار ننصح به خيار ننصح به
بروتوكول OAuth على الويب مطلوب (حلّ بديل) مطلوب (حلّ بديل)
بروتوكول OAuth 2.1 خيار ننصح به خيار ننصح به
  • تحسين خصوصية المستخدم من خلال تحديد نطاقات مخصّصة لمشاركة البيانات الضرورية فقط، وزيادة ثقة المستخدم من خلال تحديد طريقة استخدام بياناته بوضوح

  • يمكن إلغاء الوصول إلى البيانات والخدمات المستضافة على منصتك من خلال إلغاء ربط الحسابات. يتيح لك استخدام نقطة نهاية اختيارية لإبطال الرمز المميّز البقاء على اطّلاع دائم بالأحداث التي تبدأها Google، بينما يتيح لك نظام الحماية بين الحسابات (RISC) إشعار Google بأي أحداث إلغاء ربط تحدث على منصتك.

مسارات ربط الحسابات

هناك 3 مسارات لربط حساب Google، وكلها مستندة إلى بروتوكول OAuth وتتطلب منك إدارة أو التحكّم في نقاط نهاية تبادل الرموز المميّزة ومنح التفويض المتوافقة مع بروتوكول OAuth 2.0.

أثناء عملية الربط مع حساب حالي، يمكنك إصدار رموز دخول إلى Google لحسابات Google الفردية بعد الحصول على موافقة أصحاب الحسابات على ربط حساباتهم ومشاركة البيانات.

ربط حساب OAuth ‏(OAuth على الويب)

هذا هو مسار OAuth الأساسي الذي يرسل المستخدمين إلى موقعك الإلكتروني للربط. تتم إعادة توجيه المستخدم إلى موقعك الإلكتروني لتسجيل الدخول إلى حسابه. بعد تسجيل الدخول، يوافق المستخدم على مشاركة بياناته على خدمتك مع Google. في هذه المرحلة، يتم ربط حساب المستخدم على Google بخدمتك.

ربط حساب OAuth يتوافق مع مسارَي رمز التفويض وOAuth الضمني. يجب أن تستضيف خدمتك نقطة نهاية لمنح التفويض متوافقة مع بروتوكول OAuth 2.0 للتدفّق الضمني، ويجب أن تعرض نقطتَي نهاية لمنح التفويض وتبادل الرموز المميّزة عند استخدام مسار رمز التفويض.

الشكل 1 : ربط الحساب على هاتف المستخدم باستخدام بروتوكول OAuth على الويب

ربط حساب "التبديل إلى التطبيق" المستند إلى بروتوكول OAuth ‏(التبديل إلى التطبيق)

مسار OAuth يرسل المستخدمين إلى تطبيقك للربط.

يرشد ربط حساب "التبديل إلى التطبيق" المستند إلى بروتوكول OAuth المستخدمين أثناء التنقّل بين تطبيقاتك المتوافقة مع أجهزة Android أو iOS للأجهزة الجوّالة والمنصة من Google لمراجعة التغييرات المقترَحة في إذن الوصول إلى البيانات ومنح موافقتهم على ربط حسابهم على منصتك بحساب Google. لاستخدام ميزة "التبديل إلى التطبيق"، يجب أن تتيح خدمتك ربط حساب OAuth أو ربط حساب "تسجيل الدخول باستخدام حساب Google" المستند إلى بروتوكول OAuth باستخدام مسار رمز التفويض.

تتوافق ميزة "التبديل إلى التطبيق" مع أجهزة Android وiOS.

طريقة العمل:

يتحقّق تطبيق Google مما إذا كان تطبيقك مثبّتًا على جهاز المستخدم:

  • إذا تم العثور على التطبيق، يتم "تبديل" المستخدم إلى تطبيقك. يطلب تطبيقك موافقة المستخدم على ربط الحساب بحساب Google، ثم يتم "التبديل مرة أخرى" إلى واجهة Google.
  • إذا لم يتم العثور على التطبيق أو حدث خطأ أثناء عملية ربط التطبيقات بسرعة، تتم إعادة توجيه المستخدم إلى مسار الربط السلس أو بروتوكول OAuth على الويب.

الشكل 2 : ربط الحساب على هاتف المستخدم باستخدام ميزة "التبديل إلى التطبيق"

الربط السلس المستند إلى بروتوكول OAuth ‏(الربط السلس)

تضيف ميزة الربط السلس المستند إلى بروتوكول OAuth لتسجيل الدخول باستخدام حساب Google ميزة "تسجيل الدخول باستخدام حساب Google" إلى ربط حساب OAuth، ما يتيح للمستخدمين إكمال عملية الربط بدون مغادرة واجهة Google، وبالتالي تقليل المشاكل وحالات الإيقاف. يقدّم الربط السلس المستند إلى بروتوكول OAuth أفضل تجربة للمستخدم من خلال تسجيل الدخول وإنشاء الحساب و ربط الحساب بسلاسة من خلال الجمع بين ميزة "تسجيل الدخول باستخدام حساب Google" وربط حساب OAuth. يجب أن تتيح خدمتك نقاط نهاية تبادل الرموز المميّزة ومنح التفويض المتوافقة مع بروتوكول OAuth 2.0. بالإضافة إلى ذلك، يجب أن تتيح نقطة نهاية تبادل الرموز المميّزة تأكيدات رمز JSON المميّز للويب (JWT) وتنفيذ أغراض check و create و وget و.

طريقة العمل:

تؤكّد Google حساب المستخدم وتمرّر هذه المعلومات إليك:

  • إذا كان هناك حساب للمستخدم في قاعدة البيانات، يربط المستخدم بنجاح حسابه على Google بحسابه على خدمتك.
  • إذا لم يكن هناك حساب للمستخدم في قاعدة البيانات، يمكن للمستخدم إما إنشاء حساب جديد على منصة طرف ثالث باستخدام المعلومات التي تقدّمها Google، وهي عنوان البريد الإلكتروني والاسم وصورة الملف الشخصي، أو اختيار تسجيل الدخول والربط بعنوان بريد إلكتروني آخر (سيطلب ذلك تسجيل الدخول إلى خدمتك باستخدام بروتوكول OAuth على الويب).

الشكل 3 : ربط الحساب على هاتف المستخدم باستخدام الربط السلس

ما هو المسار الذي يجب استخدامه؟

ننصحك باستخدام جميع المسارات لضمان حصول المستخدمين على أفضل تجربة ربط. يقلّل مسارا الربط السلس وربط التطبيقات بسرعة من المشاكل التي يواجهها المستخدمون أثناء عملية الربط مع حساب حالي، لأنّهما يتيحان لهم إكمال عملية الربط مع حساب حالي في بضع خطوات قليلة. يتطلب ربط حساب OAuth على الويب أقل جهد وهو نقطة بداية جيدة، وبعد ذلك يمكنك إضافة مسارات الربط الأخرى.

استخدام الرموز المميّزة

تستند ميزة "ربط حساب Google" إلى معيار OAuth 2.0 المتّبع في المجال.

استخدام الرموز المميّزة

يمكنك إصدار رموز دخول إلى Google لحسابات Google الفردية بعد الحصول على موافقة أصحاب الحسابات على ربط حساباتهم ومشاركة البيانات.

Token types

OAuth 2.0 uses strings called tokens to communicate between the user agent, the client application, and the OAuth 2.0 server.

Three types of OAuth 2.0 tokens can be used during account linking:

  • Authorization code. A short-lived token that can be exchanged for an access and a refresh token. For security purposes, Google calls your authorization endpoint to obtain a single use or very short-lived code.

  • Access token. A token that grants the bearer access to a resource. To limit exposure that could result from the loss of this token, it has a limited lifetime, usually expiring after an hour or so.

  • Refresh token. A long-lived token that can be exchanged for a new access token when an access token expires. When your service integrates with Google, this token is exclusively stored and used by Google. Google calls your token exchange endpoint to exchange refresh tokens for access tokens, which are in turn used to access user data.

Token handling

Race conditions in clustered environments and client-server exchanges can result in complex timing and error handling scenarios when working with tokens. For example:

  • You receive a request for a new access token, and you issue a new access token. Concurrently, you receive a request for access to your service's resource using the previous, unexpired access token.
  • Your refresh token reply is yet to be received (or is never received) by Google. Meanwhile, the previously valid refresh token is used in a request from Google.

Requests and replies can arrive in any order, or not at all due to asynchronous services running in a cluster, network behavior, or other means.

Immediate and fully consistent shared state both within, and between, your and Google's token handling systems cannot be guaranteed. Multiple valid, unexpired tokens can coexist within or across systems short period of time. To minimize negative user impact we recommend you do the following:

  • Accept unexpired access tokens, even after a newer token is issued.
  • Use alternatives to Refresh Token Rotation.
  • Support multiple, concurrently valid access and refresh tokens. For security, you should limit the number of tokens and token lifetime.
Maintenance and outage handling

During maintenance or unplanned outages Google might be unable to call your authorization or token exchange endpoints to obtain access and refresh tokens.

Your endpoints should respond with a 503 error code and empty body. In this case, Google retries failed token exchange requests for a limited time. Provided that Google is later able to obtain refresh and access tokens, failed requests are not visible to users.

Failing requests for an access token result in a visible error, if initiated by a user. Users will be required to retry linking failures if the implicit OAuth 2.0 flow is used.

Recommendations

There are many solutions to minimize maintenance impact. Some options to consider:

  • Maintain your existing service and route a limited number of requests to your newly updated service. Migrate all requests only after confirming expected functionality.

  • Reduce the number of token requests during the maintenance period:

    • Limit maintenance periods to less than the access token lifetime.

    • Temporarily increase the access token lifetime:

      1. Increase token lifetime to greater than maintenance period.
      2. Wait twice the duration of your access token lifetime, enabling users to exchange short lived tokens for longer duration tokens.
      3. Enter maintenance.
      4. Respond to token requests with a 503 error code and empty body.
      5. Exit maintenance.
      6. Decrease token lifetime back to normal.

الربط الدائم

الربط الدائم هو شرط أساسي لعمليات الدمج المستقرة. ويضمن بقاء حسابات المستخدمين مرتبطة حتى أثناء حالات انقطاع الشبكة المؤقتة أو عمليات تجديد بيانات الاعتماد الدورية.

لاستخدام الربط الدائم، استخدِم طريقة "النافذة المنزلقة": يمكنك تمديد تاريخ انتهاء صلاحية الرمز المميّز لإعادة التحميل الحالي بدلاً من تدويره (بالرجوع إلى القسم 6 من RFC 6749). يمنع ذلك حالات التنافس وإلغاء الربط غير المقصود التي يمكن أن تحدث إذا تم إصدار رمز مميّز جديد لإعادة التحميل ولكن لم تتلقّه Google أو تخزّنه بنجاح.

التسجيل في Google

سنحتاج إلى تفاصيل إعداد بروتوكول OAuth 2.0 ومشاركة بيانات الاعتماد لتفعيل ميزة "ربط الحساب". يمكنك الاطّلاع على التسجيل لمعرفة التفاصيل.