مزيد من المعلومات عن المصادقة والترخيص

المصادقة والترخيص هما آليتان تُستخدَمان للتحقّق من الهوية والوصول إلى الموارد، على التوالي. يحدّد هذا المستند المصطلحات الأساسية التي يجب معرفتها قبل تنفيذ المصادقة والترخيص في تطبيقك.

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

إليك مثالاً مبسطًا على حجز فندق. عند وصولك إلى الفندق، يطلب منك موظف الاستقبال تقديم بطاقة تعريف الهوية للتحقّق من حجزك. تتيح لك بطاقة التعريف إثبات هويتك في الفندق. يقدّم لك موظف الاستقبال مفتاح غرفة الفندق. يمنحك هذا المفتاح إمكانية الوصول إلى موارد معيّنة في الفندق، مثل غرفة الفندق والنادي الرياضي ومركز الأعمال. يمنحك مفتاح الفندق الإذن بالوصول إلى هذه الموارد.

نظرة عامة على العملية

يوضّح المخطّط التالي الخطوات العامة لعملية المصادقة ومنح الإذن لاستخدام واجهات برمجة التطبيقات في Google Workspace:

الخطوات العالية المستوى لتنفيذ المصادقة والتفويض
الشكل 1. الخطوات العامة لتنفيذ المصادقة والتفويض
  1. ضبط مشروعك وتطبيقك على Google Cloud: أثناء عملية التطوير، عليك تسجيل تطبيقك في Google Cloud Console، وتحديد نطاقات التفويض وبيانات اعتماد الوصول لمصادقة تطبيقك باستخدام مفتاح واجهة برمجة التطبيقات أو بيانات اعتماد المستخدم النهائي أو بيانات اعتماد حساب الخدمة.

  2. مصادقة تطبيقك للحصول على إذن الوصول: عند تشغيل تطبيقك، يتم تقييم بيانات الاعتماد المسجّلة للحصول على إذن الوصول. إذا كان تطبيقك يصادق على المستخدم النهائي، قد يتم عرض طلب تسجيل الدخول.

  3. طلب موارد: عندما يحتاج تطبيقك إلى الوصول إلى موارد Google، يطلبها من Google باستخدام نطاقات الوصول ذات الصلة التي سبق لك تسجيلها.

  4. طلب موافقة المستخدم: إذا كان تطبيقك يصادق على المستخدم النهائي، يعرض Google شاشة موافقة OAuth ليتمكّن المستخدم من تحديد ما إذا كان سيمنح تطبيقك إذن الوصول إلى البيانات المطلوبة.

  5. إرسال طلب تمت الموافقة عليه للحصول على الموارد: إذا وافق المستخدم على نطاقات الوصول، يجمع تطبيقك بيانات الاعتماد ونطاقات الوصول التي وافق عليها المستخدم في طلب واحد. يتم إرسال الطلب إلى خادم التفويض التابع لـ Google للحصول على رمز دخول.

  6. ترسل Google رمزًا مميزًا للوصول: يحتوي رمز الوصول على قائمة بنطاقات الوصول الممنوحة. إذا كانت قائمة النطاقات التي تم إرجاعها أكثر محدودية من نطاقات الوصول المطلوبة، سيوقف تطبيقك أي ميزات يحدّ منها الرمز المميز.

  7. الوصول إلى الموارد المطلوبة: يستخدم تطبيقك رمز الدخول من Google لاستدعاء واجهات برمجة التطبيقات ذات الصلة والوصول إلى الموارد.

  8. الحصول على رمز إعادة تحميل (اختياري): إذا كان تطبيقك بحاجة إلى الوصول إلى إحدى واجهات Google API بعد انتهاء مدة صلاحية رمز الدخول، يمكنه الحصول على رمز إعادة تحميل.

  9. طلب المزيد من الموارد: إذا كان تطبيقك بحاجة إلى إذن وصول إضافي، سيطلب من المستخدم منح نطاقات وصول جديدة، ما يؤدي إلى تقديم طلب جديد للحصول على رمز دخول (الخطوات من 3 إلى 6).

المصطلحات المهمة

في ما يلي قائمة بالمصطلحات ذات الصلة بالمصادقة والترخيص:

المصادقة

عملية التأكّد من أنّ الكيان الأساسي، الذي يمكن أن يكون مستخدمًا أو تطبيقًا يعمل نيابةً عن مستخدم، هو ما يدّعيه. عند كتابة تطبيقات Google Workspace، يجب أن تكون على دراية بأنواع المصادقة التالية:

مصادقة المستخدم
عملية مصادقة المستخدم (تسجيل الدخول) إلى تطبيقك، وتتم عادةً من خلال عملية تسجيل دخول يستخدم فيها المستخدم اسم مستخدم وكلمة مرور معًا لإثبات هويته للتطبيق. ويمكن دمج عملية مصادقة المستخدم في تطبيق باستخدام تسجيل الدخول باستخدام حساب Google.
مصادقة التطبيق
هي عملية مصادقة تطبيق مباشرةً مع خدمات Google نيابةً عن المستخدم الذي يشغّل التطبيق. تتم مصادقة التطبيق عادةً باستخدام بيانات اعتماد تم إنشاؤها مسبقًا في رمز التطبيق.
التفويض

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

بيانات الاعتماد

هي شكل من أشكال التعريف المستخدَمة في أمان البرامج. في ما يتعلق بالمصادقة، تكون بيانات الاعتماد غالبًا عبارة عن مجموعة من اسم المستخدم وكلمة المرور. في ما يتعلق بالتفويض لاستخدام واجهات Google Workspace API، تكون بيانات الاعتماد عادةً عبارة عن شكل من أشكال التعريف، مثل سلسلة سرية فريدة، لا يعرفها سوى مطوّر التطبيق وخادم المصادقة. تتيح Google بيانات اعتماد المصادقة التالية: مفتاح واجهة برمجة التطبيقات ومعرّف عميل OAuth 2.0 وحسابات الخدمة.

مفتاح واجهة برمجة التطبيقات
بيانات الاعتماد المستخدَمة لطلب الوصول إلى البيانات العامة، مثل البيانات المقدَّمة باستخدام Maps API أو ملفات Google Workspace التي تتم مشاركتها باستخدام الإعداد "يمكن لأي مستخدم على الإنترنت لديه هذا الرابط الوصول إلى الملف" ضمن إعدادات المشاركة في Google Workspace
معرّف عميل OAuth 2
بيانات الاعتماد المستخدَمة لطلب الوصول إلى البيانات التي يملكها المستخدم هذه هي بيانات الاعتماد الأساسية المستخدَمة عند طلب الوصول إلى البيانات باستخدام واجهات Google Workspace API. تتطلّب بيانات الاعتماد هذه موافقة المستخدم.
سر العميل
سلسلة من الأحرف لا يعرفها سوى تطبيقك وخادم التفويض. يحمي سر العميل بيانات المستخدم من خلال منح الرموز المميزة للجهات الطالبة المصرّح لها فقط. يجب ألا يتضمّن تطبيقك سر العميل غير المشفّر أبدًا. ننصحك بتخزين سر العميل بشكل آمن. لمزيد من المعلومات، يُرجى الاطّلاع على التعامل مع بيانات اعتماد العميل بأمان.
مفاتيح حساب الخدمة
تستخدمها حسابات الخدمة للحصول على إذن الوصول إلى إحدى خدمات Google.
حساب الخدمة
بيانات اعتماد تُستخدَم للتفاعلات بين الخوادم، مثل تطبيق بدون واجهة مستخدم يعمل كعملية للوصول إلى بعض البيانات أو تنفيذ بعض العمليات. تُستخدَم حسابات الخدمة عادةً للوصول إلى البيانات والعمليات المستندة إلى السحابة الإلكترونية. ومع ذلك، عند استخدامها مع تفويض المرجع على مستوى النطاق، يمكن استخدامها للوصول إلى بيانات المستخدم.
المستوى

سلسلة معرّف الموارد المنتظم (URI) لبروتوكول OAuth 2.0 تحدّد مستوى الوصول إلى الموارد أو الإجراءات الممنوحة لتطبيق. بالنسبة إلى Google Workspace، تحتوي معرّفات الموارد المنتظم (URI) لنطاق التفويض على اسم تطبيق Google Workspace ونوع البيانات التي يمكنه الوصول إليها ومستوى الوصول. يمكن لمستخدمي تطبيقك مراجعة النطاقات المطلوبة واختيار إذن الوصول الذي يريدون منحه، ثم يعرض خادم المصادقة من Google النطاقات المسموح بها لتطبيقك في رمز دخول. لمزيد من التفاصيل، يُرجى الاطّلاع على مقالة كيفية اختيار نطاقات تطبيقك.

خادم التفويض

خادم Google الذي يمنح إذن الوصول، باستخدام رمز مميّز للوصول، إلى البيانات والعمليات التي يطلبها التطبيق.

رمز التفويض

رمز يتم إرساله من خادم التفويض ويُستخدم للحصول على رمز مميز للوصول. لا يلزم إدخال رمز إلا إذا كان نوع تطبيقك هو تطبيق خادم ويب أو تطبيق مثبَّت.

رمز الدخول

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

خادم الموارد

الخادم الذي يستضيف واجهة برمجة التطبيقات التي يريد تطبيقك استدعاءها

إطار عمل OAuth 2.0

معيار يمكن أن يستخدمه تطبيقك لتوفير "إذن وصول آمن مفوَّض" أو الوصول إلى البيانات والعمليات نيابةً عن مستخدم التطبيق. تمثّل آليات المصادقة والتفويض التي تستخدمها في تطبيقك عملية تنفيذك لإطار عمل OAuth 2.0.

المدير

كيان، يُعرف أيضًا باسم هوية، يمكن منحه إذن الوصول إلى أحد الموارد. تتيح واجهات برمجة التطبيقات في Google Workspace نوعَين من الجهات الرئيسية، وهما حسابات المستخدمين وحسابات الخدمة. لمزيد من التفاصيل، راجِع مقالة الجهات الرئيسية.

نوع البيانات

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

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

خطوة تفويض تتطلّب من مستخدم تطبيقك منح التطبيق إذنًا بالوصول إلى البيانات وتنفيذ عمليات نيابةً عنه.

نوع التطبيق

نوع التطبيق الذي ستنشئه عند إنشاء بيانات اعتماد باستخدام وحدة تحكّم Google Cloud، سيُطلب منك اختيار نوع تطبيقك. أنواع التطبيقات هي: تطبيق ويب (JavaScript) وتطبيق Android وتطبيق Chrome وتطبيق iOS وتطبيق على أجهزة التلفزيون والأجهزة ذات الإدخال المحدود وتطبيق سطح المكتب (يُعرف أيضًا باسم "تطبيق مثبَّت") وتطبيق Universal Windows Platform (UWP).

حساب الخدمة

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

تفويض السلطة على مستوى النطاق

هي ميزة إدارية يمكنها منح تطبيق الإذن بالوصول إلى بيانات المستخدمين نيابةً عن المستخدمين في مؤسسة Google Workspace. يمكن استخدام التفويض على مستوى النطاق لتنفيذ مهام متعلقة بالمشرف على بيانات المستخدمين. لتفويض السلطة بهذه الطريقة، يستخدم مشرفو Google Workspace حسابات الخدمة مع OAuth 2.0. بسبب أهمية هذه الميزة، يمكن للمشرفين المتميّزين فقط تفعيل تفويض السلطة على مستوى النطاق. لمزيد من التفاصيل، يُرجى الاطّلاع على تفويض مرجع على مستوى النطاق إلى حساب خدمة.

الخطوة التالية

ضبط شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth في تطبيقك لضمان فهم المستخدمين لنطاق وصول تطبيقك إلى بياناتهم وموافقتهم عليه.