تقوم منظمتي بتشغيل 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 هذه
@spyder أعرف أنك تفضل استخدام العقدة مباشرة، لكن هذا لن ينجح، لذا HTTPS هو أفضل رهان لديك، قدر الإمكان غير مرغوب فيه. ومع ذلك، فإن طلب HTTPS مثل هذا سيكون أفضل.
اضبط بيانات الاعتماد هكذا:
JSON صحيح من الناحية القانونية، فقط لن يظهر لأنه ذاتي التشغيل
مرحباً @spyder
بيانات اعتماد Databricks مثبتة على Databricks-native PAT و Databricks OAuth M2M مقابل نقطة نهاية رمز مساحة العمل، لذا لا توجد مسار في العقدة لمُصدر تابع لجهة خارجية. تغطي عقدة HTTP Request هذا بدون خطوة جلب الرمز، حيث يقوم بيان اعتماد OAuth2 العام بتشغيل منحة بيانات اعتماد العميل بنفسه ويخزن الرمز مؤقتاً وينعشه لك.
أنشئ بيان اعتماد جديد من نوع “OAuth2 API” وحدد:
المصادقة: Body
في كل عقدة HTTP Request، اضبط المصادقة على Generic Credential Type، ثم OAuth2 API، ثم اختر بيان الاعتماد هذا. وجّه عنوان URL مباشرة إلى واجهة برمجة التطبيقات في مساحة العمل الخاصة بك، بدون رأس Authorization وبدون عقدة رمز. اضبط Allowed HTTP Request Domains على بيان الاعتماد إلى مضيف مساحة العمل الخاصة بك حتى لا يتم إرسال الرمز إلا هناك. HTTP Request credentials | Nodes | n8n Docs