Databricks OAUTH مع Entra SPN

صف المشكلة/الخطأ/السؤال

تقوم منظمتي بتشغيل Azure Databricks وتحظر OAuth الأصلي من Databricks و PATs. طريقة المصادقة الوحيدة المسموحة هي عبر Entra SPN OAuth.

بالنسبة لهذا الإعداد، يجب أن أرسل طلبًا إلى https://login.microsoftonline.com/{tenantID}/oauth2/v2.0/token برقم معرّف العميل وسر العميل مع النطاق المشهور بـ 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/.default

نوع بيانات اعتماد Databricks في n8n لا يسمح بتغيير عنوان URL الرمز والنطاق لدعم هذا نوع الاتصال

عقدة Databricks في n8n أيضًا لا تسمح بتحديد نوع بيانات اعتماد Oauth عام الذي قد يسمح لي أيضًا بالمصادقة بشكل صحيح.

بسبب هاتين القيدين، لا توجد طريقة ممكنة لاستخدام عقدة Databricks مع هذه المصادقة. اضطررت إلى العودة إلى استخدام عقد HTTP وهو أقل رغبة.

أبحث عن طريقة لاستخدام عقدة Databricks الأصلية مع نقطة نهاية Oauth هذه

معلومات حول إعداد n8n الخاص بك

  • إصدار n8n: 2.34.6
  • قاعدة البيانات (الافتراضية: SQLite): postgres
  • إعداد n8n EXECUTIONS_PROCESS (الافتراضي: own, main): default
  • تشغيل n8n عبر (Docker, npm, n8n cloud, desktop app): Docker
  • نظام التشغيل: macOS

مرحباً @spyder، بينما تنتظر الرد، إليك بعض الأشياء التي قد تساعدك:

الموارد المقترحة

تم المطابقة تلقائياً مع سؤالك.

المستندات:

المنتدى:

@Erick_Torres - لقد ساعدت في حل مشاكل مشابهة من قبل، هل يمكنك إلقاء نظرة؟

اقتُرح تلقائياً من قبل روبوت المجتمع التابع لـ n8n. إنها نسخة تجريبية - يرجى مشاركة تعليقاتك هنا.

@spyder أعرف أنك تفضل استخدام العقدة مباشرة، لكن هذا لن ينجح، لذا HTTPS هو أفضل رهان لديك، قدر الإمكان غير مرغوب فيه. ومع ذلك، فإن طلب HTTPS مثل هذا سيكون أفضل.
اضبط بيانات الاعتماد هكذا:

JSON صحيح من الناحية القانونية، فقط لن يظهر لأنه ذاتي التشغيل

مرحباً @spyder
بيانات اعتماد Databricks مثبتة على Databricks-native PAT و Databricks OAuth M2M مقابل نقطة نهاية رمز مساحة العمل، لذا لا توجد مسار في العقدة لمُصدر تابع لجهة خارجية. تغطي عقدة HTTP Request هذا بدون خطوة جلب الرمز، حيث يقوم بيان اعتماد OAuth2 العام بتشغيل منحة بيانات اعتماد العميل بنفسه ويخزن الرمز مؤقتاً وينعشه لك.
أنشئ بيان اعتماد جديد من نوع “OAuth2 API” وحدد:

  • نوع المنحة: Client Credentials
  • عنوان URL لرمز الوصول: Sign in to your account
  • معرّف العميل والسر العام: قيم SPN الخاصة بك
  • النطاق: 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/.default
  • المصادقة: Body
    في كل عقدة HTTP Request، اضبط المصادقة على Generic Credential Type، ثم OAuth2 API، ثم اختر بيان الاعتماد هذا. وجّه عنوان URL مباشرة إلى واجهة برمجة التطبيقات في مساحة العمل الخاصة بك، بدون رأس Authorization وبدون عقدة رمز. اضبط Allowed HTTP Request Domains على بيان الاعتماد إلى مضيف مساحة العمل الخاصة بك حتى لا يتم إرسال الرمز إلا هناك.
    HTTP Request credentials | Nodes | n8n Docs

شكراً. هذا ما انتهيت به، لكنه ما يزال ليس مثالياً بالطبع.

أهلاً وسهلاً! أتمنى أن تكون هناك حل أفضل! يجب عليك تقديم طلب دمج على GitHub لـ n8n! أتمنى لك يوماً رائعاً، ولا تتردد في تحديد أي من الردود كحل!