صور رمزية قائمة على SSO والاتصال بالمستخدمين

لذا كنت أحاول استخدام مطالبة صورة في OIDC JWT الخاص بنا والتي هي عنوان URL لمتجر صور بدون مصادقة إضافية. نحن نستخدم Entra لذا عادةً ما يشير userinfo إلى نقطة نهاية الرسم البياني وبدون إضافة رمز حامل سيفشل ذلك.

بالنظر إلى omniauth لـ oidc يبدو أن الصورة مضافة إلى المستخدم لذلك كنت ألعب بذلك.

أولاً، احتجنا إلى تزييف وثيقة الاكتشاف لإزالة نقطة نهاية userinfo مما يسمح بالوصول إلى مطالبات الصورة مقابل ما هو موجود فقط في userinfo. يبدو أن هذا يعمل بشكل جيد بناءً على المحتوى في جدول associated_user_accounts وأحداث سجل OIDC المفصلة التي يمكنني رؤيتها، يتم التحقق من مطالبة الصورة وتخزينها.

يمكنني رؤية مؤشرات في جدول uploads بأن استيراد_url_للمستخدم يبدو أنه يعمل، ولكن “user_avatar///.png” هو طريق مسدود.

لقد لعبت بإعدادات الصورة الرمزية لـ Discourse Connect ولا أعتقد أن هذا النموذج يعتبر نظامًا خارجيًا، لكنني جربت ذلك أيضًا. لقد أضفت أيضًا اسم نطاق خادم الصورة الرمزية إلى قائمة “المضيف الداخلي” حيث كنا نفكر في ssrf، ولكن لا يبدو أن هذا هو الحال. بالنسبة للمستخدمين، أرى أن “صورة مخصصة” ممكّنة، ولكن الرابط يبدو معطلاً لذلك لست متأكدًا مما إذا كان يحاول ولكنه لا يستطيع الانعطاف.

هل نجح أي شخص هنا في استخدام مطالبات JWT لتوفير عنوان URL للصورة الرمزية وربما يمكنه تحديد ما أفتقده؟ هل هناك أي تصحيح للأخطاء حول user_avatar يمكنني التعمق فيه وقد يلقي بعض الضوء؟