كيفية حذف حسابات المستخدمين عبر API بدون حظر IP

لقد قمنا بدمج Discourse مع تطبيق آخر، ويتم إدارة المستخدمين في Keycloak. عندما يقوم المستخدم بحذف حسابه في التطبيق الآخر، نقوم بحذفه أيضًا عبر واجهة برمجة التطبيقات في Discourse.
يعمل هذا بشكل جيد، ولكن يتم حظر عنوان IP الخاص بالمستخدم تلقائيًا في Discourse، لذلك لا توجد طريقة لتسجيل الدخول كمستخدم مختلف من نفس عنوان IP.
هل يمكن إيقاف حظر عنوان IP هذا؟ أو جعله يزول تلقائيًا بعد فترة زمنية معينة؟

نعم. ستحتاج إلى التحقق من الشيء الذي يحظر عنوان IP. انظر الهندسة العكسية لواجهة برمجة تطبيقات Discourse وانظر ما يحدث عندما تقوم بذلك من تجربة المستخدم.

وفقًا لـ وثائق واجهة برمجة التطبيقات لحذف مستخدم، فإن ما إذا كان سيتم حظر عنوان IP هو أحد الخيارات التي يتم تمريرها مع نص الطلب.

لذلك، في الكود الذي يتم فيه إجراء الطلب، يجب أن تكون قادرًا على توفير JSON في نص الطلب يتضمن ”block_ip”: false.

على سبيل المثال:

{
  delete_posts: false,
  block_email: false,
  block_urls: false,
  block_ip: false,
}
3 إعجابات

لست متأكدًا مما إذا كنت أفهم هذا.
هل تقصد أنه يجب عليّ إلغاء حظر عنوان IP عبر واجهة برمجة التطبيقات (API) بعد حذف الحساب؟
كنت آمل في الواقع في وجود مفتاح تبديل للتكوين في Discourse.

حسناً، فهمت. شكراً لك، سأجرب هذا.

إعجابَين (2)

مرحباً
هل حصلت على إجابتك هنا؟ لأن “block_ip”: false، لا تعمل في نص طلب API في حالتي، فهل نجحت في ذلك أم أنك أرسلت طلبًا منفصلاً آخر عن طريق الهندسة العكسية لـ Discourse API؟

إنه يعمل معي.
هذا هو نص الطلب الخاص بنا:

{
  delete_posts: false,
  block_email: false,
  block_urls: false,
  block_ip: false,
}
إعجابَين (2)

أتساءل عما إذا كانت المشكلة هي استخدام \"block_ip\": false بالضبط لجسم الطلب، بدلاً من سلسلة كائن JSON. لم يعد بإمكاني تعديل مشاركتي ولكنني قمت بالإبلاغ عنها ليتم إضافة JSON الخاص بك كمثال لجعل الحل المحدد أوضح.

شكراً على ردك.
لدينا هذا مطبقًا لجسم طلب JSON {block_email: false} (إنه block_email في وضعنا)، ولكنه لا يبدو أنه يسري في واجهة برمجة تطبيقات حذف المستخدم. احتجنا إلى إرسال طلب منفصل لإزالة البريد الإلكتروني من رسائل البريد الإلكتروني المفحوصة (حظر رسائل البريد الإلكتروني).

اعتمادًا على كيفية بناء سلسلة JSON الخاصة بك (يدويًا أو باستخدام مكتبة)، قد تحتاج إلى تجربة علامات اقتباس مفردة، علامات اقتباس مزدوجة، أو عدم استخدام علامات اقتباس على الإطلاق. بخلاف ذلك، ليس لدي فكرة - عادةً ما يقوم API الخاص بـ Discourse بما يعد به بالضبط.

إعجاب واحد (1)

حسنًا، سأقوم بنشره هنا لأي شخص يواجه نفس الحالة مع واجهة برمجة تطبيقات حذف المستخدم.
block_ip: False يمنع بشكل موثوق من إضافة عنوان الـ IP إلى عناوين الـ IP المعرضة للمراقبة.
block_email: False يجب أن يمنع البريد الإلكتروني من الإضافة إلى screened_emails، ومع ذلك بعض الحالات الحادة (مثل المستخدمين الذين تم وضع علامة عليهم على أنهم مرسلين غير مرغوب فيهم أو المستخدمين الجدد من المستوى 0) قد تؤدي إلى تفعيل فحص البريد الإلكتروني حتى لو كانت block_email غير مفعلة.
سيحتاج ذلك إلى طلب إضافي لإلغاء حظر البريد الإلكتروني من البريد الإلكتروني المعرض للمراقبة.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.