Latest.json يحتوي على حقول admin و trustlevel - عند عدم تسجيل الدخول

مرحباً، تعرض نسخة Discourse الخاصة بنا حقلي admin و trustlevel للمستخدم في جسم استجابة /latest.json (أحدث المواضيع) للمستخدمين غير المصادق عليهم.

على سبيل المثال، يظهر مستخدم في قائمة /latest.json على النحو التالي:

{
  "users": [
    {
      "id": 32,
      "username": "Beeblebrox",
      "avatar_template": "/user_avatar/my-discourse.org/beeblebrox/{size}/1_1.png",
      "flair_name": null,
      "admin": true,
      "trust_level": 1
    }
  ],
  "primary_groups": [],
  "flair_groups": [],
  "topic_list": []
}

ما إذا كان المستخدم مسؤولاً هي معلومات حساسة في رأيي؛ هل من الممكن عدم عرض حقل أ. المسؤول و ب. مستوى الثقة في صفحة استجابة /latest.json لـ 1. المستخدمين غير المصادق عليهم و 2. جميع المستخدمين؟

هذه هي المشكلة. لا يتم التعامل معها على أنها حساسة في أي مكان على حد علمي. من الممكن إخفاء المستخدمين الذين هم مسؤولون عن طريق إضافة.

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

شكراً على الرد السريع! ماذا تقصد بالضبط بـ:

من الممكن الاختباء من المستخدمين الذين لديهم مسؤولون في إضافة s plugin.

هل s plugin إضافة محددة؟

لقد كتبت واحدًا يخفي المستخدم الخاص بي من قائمة المسؤولين. لست متأكدًا تمامًا مما إذا كان يخفي المستخدم الخاص بي من تحميل JSON هذا، ولكني أعتقد أنه قد يفعل؟

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

ليس كذلك. نحن نعرضها بشكل بارز في صفحة /about :smile:

3 إعجابات

لقد وجدتُه. يبدو أنه يزيل المسؤول فقط من صفحة /admin:

  require_dependency 'admin_constraint'
  add_to_serializer(:about, :admins) do
    object.admins.reject { |u|
      puts "REJECT: #{u.emails.first} "
      u.emails.first =~ HIDDEN_EMAIL_REGEXP
    }
  end
إعجابَين (2)

لم أكن أعرف أن صفحة “حول” تسرد المشرفين والمسؤولين، لذا هذا يفسر لماذا لا تُعامل على أنها معلومات حساسة. لقد حصلت على إجابتي، شكرًا لكم جميعًا على الردود السريعة، أقدر ذلك كثيرًا!

إعجابَين (2)