وصف المشكلة/الخطأ/السؤال
أريد نشر موصّل Outlook في مؤسستي، لكنني لا أريد للمستخدمين القدرة على إرسال البريد الإلكتروني. ومع ذلك، عند محاولة توصيل بيانات اعتماد Outlook، يتطلب إذن Mail.Send على التطبيق ليكون نشطًا. أفترض أن هذا يرجع إلى أن الناطق (Scope) مدمج بشكل ثابت في تكوين بيانات الاعتماد.
هل هناك طريقة لاستخدام موصّل Outlook بدون وجود القدرة على Mail.Send في تسجيل التطبيق؟
ما هي رسالة الخطأ (إن وجدت)؟
لا توجد رسالة خطأ
معلومات حول إعداد n8n الخاص بك
- إصدار n8n: غير معروف الآن، حاليًا لست في الموقع للوصول (آسف)
- قاعدة البيانات (الافتراضي: SQLite): SQLite
- إعداد n8n EXECUTIONS_PROCESS (الافتراضي: own, main): افتراضي
- تشغيل n8n عبر (Docker, npm, n8n cloud, desktop app): docker
- نظام التشغيل: Linux
@Freddyg303 نعم، بيانات اعتماد Outlook المدمجة تحدد Mail.Send بشكل ثابت في الأذونات، لا توجد طريقة لحذفها من جانب العقدة. الحل هو تخطي عقدة Outlook واستخدام HTTP Request مع بيانات اعتماد OAuth2 API عامة حيث تحدد الأذونات التي تريدها فقط.
إعداد بيانات الاعتماد:
- بيانات اعتماد جديدة، النوع: OAuth2 API
- نوع المنحة: Authorization Code
- عنوان URL للتفويض: Sign in to your account
- عنوان URL لرمز الوصول: Sign in to your account
- الأذونات: openid offline_access Mail.Read (أي من تلك التي تحتاجها فعلاً)
- معرّف العميل/السر من تسجيل التطبيق الخاص بك
ثم اتصل مباشرة بـ MS Graph:
لن يوافق المستخدمون الآن إلا على ما أدرجته، لا يوجد أي موجه Mail.Send على الإطلاق. غيّر عنوان URL لأي إجراء تحتاجه (قائمة/قراءة/نقل/حذف متاح كله ضمن /me/messages على Graph API)
مرحبا @Freddyg303
لاستخدام Outlook بدون صلاحية Mail.Send، اتبع هذين الخطوتين:
1)استخدم بيانات اعتماد عامة: أنشئ بيانات اعتماد “Microsoft OAuth2 API” بدلاً من الخاص بـ Outlook. يفتح هذا حقل النطاق (Scope)، مما يسمح لك بإدخال الصلاحيات التي تحتاجها فقط يدويًا (مثل Mail.Read) مع حذف Mail.Send.
2)استخدم عقدة HTTP Request: نظرًا لأن عقدة Outlook المدمجة تتطلب بيانات اعتماد مقيدة، استخدم عقدة HTTP Request للتفاعل مع Microsoft Graph API. اضبط المصادقة على بيانات الاعتماد العامة الجديدة لـ Microsoft لتنفيذ مهامك.