سؤال

أنا جديد جدًا في Salesforce ولغة Apex الخاصة بهم. لقد قرأت بعض الوثائق وجربت التكامل بين Google و Salesforce.

أتساءل هل من الممكن محاكاة رمز مصادقة من Google إلى Salesforce؟

أحاول قراءة جدول بيانات Google ثم ملء كائن Salesforce تلقائيًا. سيكون تسجيل دخول المستخدم دائمًا هو نفسه/عالمي لهذا جدول البيانات ، لذلك لدي بيانات الاعتماد المطلوبة لتسجيل الدخول. أنا أعمل من العينة التي تتطلب Visualforce ، وأتساءل كيف يمكنني تلقائيًا القيام برمز معرف الجلسة الذي تتطلبه واجهة برمجة تطبيقات جدول بيانات Google.

أيه أفكار؟

هل كانت مفيدة؟

المحلول

المدرسة القديمة ، الطريق الصعبة هو إرسال ملف تسجيل الدخول() اتصل إلى واجهة برمجة التطبيقات (متاحة من خلال رسائل الصابون). API Salesforce API موثقة بشكل جيد والكثير من الأمثلة متوفرة (سواء في لغات البرمجة أو ل طلبات/ردود XML الخام).

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

ظهر خيار آخر في الآونة الأخيرة وهذا هو API REST (لا حاجة إلى الصابون). يبدو أكثر واعدة وأسهل في رأيي. مقدمة سريعة متوفرة هنا وستجد المزيد من الوثائق في أسفل الصفحة.

أخيرًا وليس آخرًا - روابطان مثيرة للاهتمام:http://code.google.com/apis/gdata/articles/salesforce.html لبعض البرنامج التعليمي للتكامل والتكامل المدمج الذي تقدمه Salesforce: http://www.salesforce.com/assets/pdf/datashets/salesforceGoOgLeApps.pdf

نصائح أخرى

لقد استخدمت إعدادات مخصصة للقيام بذلك. استخدم OAUTH للحصول على رمز رمز لـ Google ، ثم قم بتخزين هذا الرمز المميز في إعدادات Salesforce المخصصة (إعدادات الإعداد-التطوير). يمكنك بعد ذلك استرداد الرمز المميز لرسالة وسائل الشرح إلى Google من هذا الإعداد المخصص لأي مستخدم يحتاج إلى الوصول إلى تطبيقات Google. الجانب السلبي هو أن كل مستخدم سيصادقه كمستخدم رمز الإعداد المخصص. الاتجاه الصعودي هو أنهم لن يحتاجوا إلى المصادقة بشكل فردي. يمكن استرداد الإعدادات المخصصة عبر Apex باستخدام getter بسيط ، وتعيش ككائنات تشبه Apex.

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

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

هل تحاول تسجيل الدخول إلى تطبيقات Google من SFDC؟ هناك خيارات لتطبيقات Google داخل Salesforce ، انتقل إلى الإعداد> إعداد الإدارة> تطبيقات Google> الإعدادات. لم أستخدم هذا ويتطلب بعض الإعداد ، لكنني اعتقدت أنني سأشير إليه. بصرف النظر عن ذلك ، لا يمكنني سوى التخلص من OAUTH (الحصول على المستخدمين مع Google من داخل Salesforce عند محاولة الوصول إلى تطبيقات Google) و SSO (والتي أعرف أنه يمكن استخدامها للمصادقة من نظام خارجي ، على الرغم من أنه غير متأكد مما إذا كان يعمل الآخر طريق).

انظر إلى قائمة "بيانات الاعتماد المسماة" في إعداد Salesforce. هناك ، يمكنك تخزين بيانات اعتماد المصادقة للخدمات التي تم الوصول إليها عبر Apex:

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

يمكن استخدام التحرير والسرد اسم المستخدم/المرور ، أو شهادة ، أو توقيع AWS ، وهناك خيار JWT ..

مستندات مساعدة: https://help.salesforce.com/articleview؟id=named_credentials_about.htm&type=5

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top