بالنسبة إلى تطبيقات Google Chat المستندة إلى نقاط نهاية HTTP، يوضّح هذا القسم كيفية التحقّق من أنّ الطلبات إلى نقطة النهاية واردة من Chat
لإرسال أحداث التفاعل إلى تطبيق Chat
نقطة النهاية، تقدم Google طلبات إلى خدمتك. وللتحقق من أن الطلب
الواردة من Google، يتضمن Chat
رمز الحامل المميز
في الرأس Authorization
لكل طلب HTTPS إلى نقطة النهاية. بالنسبة
مثال:
POST
Host: yourappurl.com
Authorization: Bearer AbCdEf123456
Content-Type: application/json
User-Agent: Google-Dynamite
السلسلة AbCdEf123456
في المثال السابق هي تفويض الحامل
الرمز المميز. هذا هو رمز تشفير مميّز أصدرته Google. نوع الحامل
الرمز وقيمة
audience
على نوع جمهور المصادقة الذي اخترته عند
ضبط تطبيق Chat
في حال كنت قد نفّذت تطبيق Chat باستخدام السحابة الإلكترونية للوظائف أو تشغيل Cloud، تتولى Cloud IAM إثبات ملكية الرموز المميزة تلقائيًا. إِنْتَ إضافة حساب خدمة Google Chat كمُتصل معتمد. إذا كان تطبيقك ينفذ خادم HTTP خاصًا به، فيمكنك التحقق من رمز الحامل المميز باستخدام مكتبة برامج واجهة Google API مفتوحة المصدر:
- Java: https://github.com/google/google-api-java-client
- Python: https://github.com/google/google-api-python-client
- Node.js: https://github.com/google/google-api-nodejs-client
- .NET: https://github.com/google/google-api-dotnet-client
إذا لم يتم التحقّق من الرمز المميّز لتطبيق Chat، سيتم
يجب أن تستجيب الخدمة للطلب باستخدام رمز الاستجابة HTTPS
401 (Unauthorized)
مصادقة الطلبات باستخدام دوال Cloud أو Cloud Run
في حال تنفيذ منطق الدالة باستخدام دوال Cloud أو Cloud Run، يمكنك
يجب اختيار App URL
في الحقل Authentication Audience (جمهور المصادقة) في
تطبيق Chat
إعداد الاتصال والتأكد من
عنوان URL للتطبيق في عملية الضبط مع عنوان URL لدالة السحابة الإلكترونية أو
نقطة نهاية تشغيل السحابة الإلكترونية.
بعد ذلك، عليك تفويض حساب خدمة Google Chat.
"chat@system.gserviceaccount.com
" كمتصل.
توضّح الخطوات التالية كيفية استخدام دوال Cloud (الجيل الأول):
وحدة التحكّم
بعد نشر الدالة على Google Cloud:
في وحدة التحكّم في Google Cloud، انتقِل إلى صفحة "وظائف السحابة الإلكترونية":
في قائمة "دوال السحابة الإلكترونية"، انقر على مربّع الاختيار بجانب مربّع الاختيار الأخرى. (لا تنقر على الدالة نفسها.)
النقر على الأذونات في أعلى الشاشة لوحة الأذونات يفتح.
انقر على إضافة مدير.
في الحقل القواعد الرئيسية الجديدة، أدخِل
chat@system.gserviceaccount.com
.اختَر الدور Cloud Functions >. مُستدعي Cloud Functions من خلال اختيار دور
انقر على حفظ.
gcloud
استخدِم الأمر gcloud functions add-iam-policy-binding
:
gcloud functions add-iam-policy-binding RECEIVING_FUNCTION \
--member='serviceAccount:chat@system.gserviceaccount.com' \
--role='roles/cloudfunctions.invoker'
استبدِل RECEIVING_FUNCTION
باسم
وظيفة تطبيق Chat.
توضح الخطوات التالية كيفية استخدام خدمات Cloud Functions (الجيل الثاني) أو Cloud Run:
وحدة التحكّم
بعد نشر الدالة أو الخدمة على Google Cloud:
في Google Cloud Console، انتقِل إلى صفحة "تشغيل السحابة الإلكترونية":
في قائمة خدمات تشغيل السحابة الإلكترونية، انقر على مربع الاختيار بجوار مربع الأخرى. (لا تنقر على الدالة نفسها.)
النقر على الأذونات في أعلى الشاشة لوحة الأذونات يفتح.
انقر على إضافة مدير.
في الحقل القواعد الرئيسية الجديدة، أدخِل
chat@system.gserviceaccount.com
.اختَر الدور تشغيل السحابة الإلكترونية > Cloud Run Invoker من اختيار دور
انقر على حفظ.
gcloud
استخدِم الأمر gcloud functions add-invoker-policy-binding
:
gcloud functions add-invoker-policy-binding RECEIVING_FUNCTION \
--member='serviceAccount:chat@system.gserviceaccount.com'
استبدِل RECEIVING_FUNCTION
باسم
وظيفة تطبيق Chat
مصادقة الطلبات باستخدام الرمز المميّز لمعرّف عنوان URL للتطبيق
إذا كان حقل Authentication Audience (جمهور المصادقة) في تطبيق Chat
تم ضبط إعداد الاتصال على App URL
،
الرمز المميز لتفويض الحامل في الطلب هو OpenID Connect من Google
الرمز المميّز للمعرّف (OIDC)
تم ضبط الحقل email
على chat@system.gserviceaccount.com
.
تم ضبط الحقل audience
على عنوان URL الذي ضبطت Google Chat لإرساله.
الطلبات إلى تطبيق Chat. على سبيل المثال، إذا كانت قيمة
نقطة النهاية التي تم ضبطها لتطبيق Chat هي
https://example.com/app/
، ثم يكون الحقل audience
في الرمز المميز للمعرّف هو
https://example.com/app/
توضح النماذج التالية كيفية التحقق من إصدار رمز الحامل بواسطة Google Chat واستهدف تطبيقك باستخدام مكتبة برامج Google OAuth.
Java
Python
Node.js
مصادقة الطلبات باستخدام رقم المشروع JWT
إذا كان حقل Authentication Audience (جمهور المصادقة) في تطبيق Chat
تم ضبط إعداد الاتصال على Project
Number
، والرمز المميز لتفويض الحامل في الطلب هو رمز موقَّع ذاتيًا.
رمز JSON المميّز للويب (JWT)
وإصدار وتوقيع chat@system.gserviceaccount.com
.
تم ضبط الحقل audience
على رقم مشروع Google Cloud الذي استخدمته.
لإنشاء تطبيق Chat. على سبيل المثال، إذا كان
رقم مشروع Cloud لتطبيق Chat هو
1234567890
، ثم الحقل audience
في JWT هو 1234567890
.
توضح النماذج التالية كيفية التحقق من إصدار رمز الحامل بواسطة Google Chat واستهدف مشروعك باستخدام مكتبة عملاء Google OAuth.
Java
Python
Node.js
مواضيع ذات صلة
- لإلقاء نظرة عامة على المصادقة والترخيص في Google Workspace، الرؤية مزيد من المعلومات عن المصادقة والتفويض
- لإلقاء نظرة عامة على المصادقة والترخيص في Chat، الرؤية نظرة عامة على المصادقة.
- إعداد المصادقة والترخيص باستخدام بيانات اعتماد المستخدم أو a حساب الخدمة.