2008-09-29 11 views
6

मुझे विश्वास है कि हम स्वत: प्रमाणीकरण करने के लिए SharePoint साइट्स के लिए भेजा NTLM डेटा करने के लिए Firefox अनुमति दे सकते हैं पुनः प्राप्त है, और मुझे लगता है कि इस आईआईएस के साथ संभव है।रेल को NTLM सक्रिय निर्देशिका उपयोगकर्ता डेटा w/ओ आईआईएस

मैं एक आंतरिक रेल साइट के साथ एक ही बात करना चाहते हैं।

क्या किसी को इस तरीके से पता है कि मैं अपाचे/मैंग्रेल सेटअप के माध्यम से एनटीएलएम प्रकार की उपयोगकर्ता जानकारी प्रमाणित कर सकता हूं (बशर्ते कि यह पहले से ही एक सक्रिय निर्देशिका डोमेन के अंदर एक विंडोज बॉक्स पर चल रहा है)?

उत्तर

2

मुझे लगता है कि आप पहले ही काम कर चुके हैं कि फ़ायरफ़ॉक्स और आईई को एनटीएलएम प्रमाणीकरण सामग्री वापस भेजने के लिए आपको कौन से HTTP शीर्षलेख भेजने की आवश्यकता है, और सर्वर सर्वर पर इसे संभालने की आवश्यकता है?

आप अंतर्निहित विंडोज़ प्रमाणीकरण कार्य करता है जो NTLM संभाल उपयोग करने के लिए माणिक के win32 libraries से कुछ का उपयोग कर सकते हैं।

मैं सुझाव दूंगा कि कम से कम प्रतिरोध का मार्ग यह देखने के लिए हो सकता है कि कोई COM घटक है जो आपके लिए प्रमाणीकरण कर सकता है, और यदि ऐसा है, तो Win32OLE रूबी लाइब्रेरी का उपयोग करके इसका उपयोग करें।

अगर कोई COM घटक है, तो आप उन अन्य पुस्तकालयों जो आप के लिए देशी Win32 तरीकों आह्वान कर सकते हैं में से एक में कुछ ढूँढने में सक्षम हो सकता है।

आपको लगता है कि नहीं मिल रहा है, तो आप एक गहरे लाल रंग का सी विस्तार लिखने के लिए होगा। मैंने इसे लिनक्स पर किया है, और रूबी का विस्तार करना बहुत आसान है, लेकिन आप माइक्रोसॉफ्ट प्रमाणीकरण एपीआई थोड़ा दर्दनाक पा सकते हैं।

आशा हो जाता है कि आप सही रास्ते पर शुरू कर दिया :-)

2

तुम भी Apache ntlm module, जो प्रमाणित उपयोगकर्ता के उपयोगकर्ता नाम से अपने आवेदन करने के लिए के बाद एक हैडर पास करना चाहिए इस्तेमाल कर सकते हैं। वह मॉड्यूल थोड़ा पुराना दिखता है, लेकिन कुछ अन्य मॉड्यूल सुझाता है जो आपकी आवश्यकताओं के अनुरूप हो सकते हैं।

10

मैंने लिनक्स पर अपाचे के लिए tutorial on how to install patched mod_ntlm module बनाया और एनटीएलएम प्रमाणीकृत उपयोगकर्ता नाम को रेल तक कैसे पास किया और उस से रेल सत्र कैसे बनाया। इसलिए परिणामस्वरूप आपको रेल एप्लिकेशन चलाने के लिए विंडोज सर्वर की आवश्यकता नहीं है।

वहां आप फ़ायरफ़ॉक्स में स्वचालित एनटीएलएम प्रमाणीकरण को सक्षम करने के तरीके को भी ढूंढ सकते हैं - स्थान फ़ील्ड में "about: config" दर्ज करें और फिर "network.automatic-ntlm-auth.trusted-uris" खोजें। वहां आप सर्वर दर्ज कर सकते हैं जिसके लिए आप स्वचालित एनटीएलएम प्रमाणीकरण का उपयोग करना चाहते हैं।

+0

यह कमाल है। –

2

पुराना सवाल मुझे पता है, लेकिन मैं इस तरह के एक समान उत्तर की तलाश में आया।

आप तरीकों यहाँ (http://blog.rayapps.com/2008/12/02/ntlm-windows-domain-authentication-for-rails-application/) वर्णित इस्तेमाल कर सकते हैं। हालांकि mod_ntlm यूनिक्स/लिनक्स मशीन पर विंडोज प्रमाणीकरण के लिए है। mod_auth_sspi विंडोज़ के तहत अपाचे से WinNT प्रमाणीकरण के लिए आपको क्या चाहिए।

4

अगर कोई इस पर ठोकर खाता है तो अतिरिक्त जानकारी का बिट।

मैं ऐसा कुछ करना चाहता था जिसे मैंने सोचा था कि यह बहुत आसान होना चाहिए - एनटीएलएम का उपयोग करते हुए एनटीएलएम का उपयोग करके एमपीएलएस/विंडोज (वास्तव में इंस्टेंट रेल) ​​पर चल रहे एक रेल ऐप से उपयोगकर्ता विंडोज उपयोगकर्ता नाम निकालें। मूल कोड लिखने के बाद विभिन्न हैंडशेकिंग ऑपरेशंस का प्रबंधन (http://rubyforge.org/projects/rubyntlm/ पर महान एनटीएलएमआरबी लाइब्रेरी का उपयोग करके) और इसे फ़ायरफ़ॉक्स में अद्भुत तरीके से काम करने के लिए मिला, मैं आईई को काम नहीं करने के लिए कुछ हद तक निराश था।

मोंगल टाइप 1/2/3 संदेश एक्सचेंज के दौरान रख-रखाव का समर्थन नहीं करता है (कम से कम मूल रूप से, मेरा मानना ​​है कि इसमें हैक/फिक्स है), जो आईई मांगता है और फ़ायरफ़ॉक्स बिना हो जाता है।

तो रिमोट एनटीएलएम सेवा (जैसे शेयरपॉइंट या अन्य वेबसाइट) के खिलाफ विंडोज पर चल रहे एक रेल सर्वर को प्रमाणित करना उचित रूप से सीधे आगे है, लेकिन विंडोज़ पर चल रहे रेल सर्वर के खिलाफ आईई ब्राउज़र को प्रमाणीकृत करना मोंगल के साथ इतना नहीं है। आईआईएस एक विकल्प होगा, जैसा कि फास्टसीजीआई के साथ मूल अपाचे हो सकता है। पूर्व थोड़ा गड़बड़ महसूस करता है और बाद वाला मोंगल के जितना तेज़ नहीं होगा।

2

इस विशेष परियोजना होनहार लग रहा है और योगदानकर्ताओं के लिए लग रही है:

मैंने अभी तक यह कोशिश नहीं की है। फिलहाल मैं रैमॉन्ड्स के समाधान को लागू करने की योजना बना रहा हूं क्योंकि ऐसा लगता है कि इसमें बहुत सफलता है।

0

Waffle देखें। यह Win32 एपीआई का उपयोग कर जावा सर्वर पर विंडोज़ पर एसएसओ प्रदान करता है। कई कार्यान्वित फ़िल्टर हैं (सर्वलेट, टोमकैट वाल्व, वसंत-सुरक्षा)।