هل يلتزم المكون الإضافي Discourse SAML بمعلمة SAML RelayState إذا تم إرسالها بواسطة موفر الهوية (IDP)؟ أي، هل سيعيد التوجيه إلى حيث تشير معلمة RelayState بعد المصادقة؟
هذا هو سبب سؤالي:
أنا أستخدم المكون الإضافي SAML للمصادقة إلى موفر هوية توفره Mini-Orange ويعمل على Joomla. لقد نجح هذا بشكل جيد.
نحن الآن نحاول دمج Discourse مع منتج Linguise. يمكن لهذا المنتج المذهل إجراء ترجمة فورية لكل عنصر في الصفحة، ويعمل بشكل جيد جدًا على خادم الاختبار الخاص بنا الذي لا يستخدم مصادقة SAML.
مشكلتنا المحددة هي أن Linguise يعمل باستخدام نطاق فرعي لكل لغة. لذا، إذا كنت على https://mysite.com واستخدمت مبدل اللغة على الشاشة للتبديل إلى الفرنسية على سبيل المثال، فسيتم إعادة التوجيه إلى https://fr.mysite.com.
مرة أخرى، هذا يعمل بشكل جيد. المشكلة هي تكامل SAML.
يرسل Discourse SAML طلب مصادقة إلى موفر الهوية، وعادةً ما يعيد التوجيه إلى عنوان URL الرئيسي العادي للموقع (mysite.com) بعد المصادقة. هذا يكسر الأمور، لأنني أريده أن يعيد التوجيه إلى fr.mysite.com.
لذا، أعمل مع موفر الهوية الخاص بي لإرسال معلمة RelayState مناسبة تتطابق مع عنوان URL الصحيح للموقع (fr.mysite.com، والذي يستمدونه من HTTP Origin لطلب المصادقة الأصلي).
إذا دفعت مقابل هذا التخصيص، فهل سيحترم Discourse معلمة RelayState؟