क्या यह Kerberos / AD सेटअप संभव है?


10

हमारे पास थोड़ा जटिल IDAM सेटअप है:

यहाँ छवि विवरण दर्ज करें

यानी अंत उपयोगकर्ता की मशीन और ब्राउज़र मूल AD के साथ एक नेटवर्क में बैठते हैं, और हमारे जेट्टी-आधारित अनुप्रयोग और AD जो इसे (स्थानीय AD) बात कर सकते हैं दूसरे में बैठते हैं।

दोनों AD के बीच दो तरफा भरोसा है। पैरेंट नेटवर्क के ब्राउज़र में विश्वसनीय डोमेन में स्थानीय डोमेन है।

जेट्टी सर्वर का सेटअप निम्नानुसार है:

  • यह स्थानीय AD में एक प्रिंसिपल के खिलाफ उत्पन्न कीटाटब फाइल का उपयोग करता है
  • यह स्थानीय AD में परिभाषित उपयोगकर्ता के तहत विंडोज सेवा के रूप में चल रहा है
  • क्षेत्र, डोमेन-क्षेत्र मानचित्रण और kdc को स्थानीय AD के डोमेन के विरुद्ध परिभाषित किया गया है
  • यह spnego का उपयोग करता है - isInitiator गलत पर सेट है; doNotPrompt सच है; storeKey सच है

यह समस्या है:

  • एक परीक्षण के रूप में, स्थानीय नेटवर्क के अंदर एक ब्राउज़र से सर्वर तक पहुंच (यानी स्थानीय विज्ञापन से जुड़ा हुआ) काम करता है - लॉग में केर्बरोस डिबग जानकारी दिखाई देती है, मैं HTTP ट्रैफ़िक में केर्बरोस बातचीत को सही देख सकता हूं, और उपयोगकर्ता स्वचालित रूप से साइन इन हो जाता है । प्रतिभाशाली।
  • हालाँकि , मूल नेटवर्क के अंदर एक ब्राउज़र से सर्वर तक पहुँच (जो हमारे उपयोगकर्ता चीजों को कैसे करेंगे) काम नहीं करता है! ब्राउज़र को 401 unauth वापस मिलता है, लेकिन फिर क्रेडेंशियल के लिए संकेत देता है, जो जब दर्ज किया जाता है तो एक खाली स्क्रीन देता है। फिर एड्रेस बार में क्लिक करें और एंटर दबाएं दो चीजों में से एक है, जो इस बात पर निर्भर करता है कि क्रेडेंशियल्स रिमोट या लोकल एडी के लिए हैं:

    • स्थानीय AD क्रेडेंशियल्स तब लॉग में स्क्रैच से Kerberos के साथ ठीक लॉग इन करें (GET अनुरोध, 401 अनहुथ प्रतिक्रिया, Kerberos हेडर अनुरोध, आदि)
    • दूरस्थ AD क्रेडेंशियल लॉग इन नहीं करते (GET अनुरोध, 401 अनहुथ प्रतिक्रिया, NTLM शीर्षलेख जैसा दिखता है Authorization: Negotiate <60 or so random chars>) :

किसी भी तरह से, तथ्य यह है कि यह संकेत दे रहा है गलत है!

क्या इन लक्षणों के लिए कोई स्पष्टीकरण है? क्या सेटअप हमारे पास है जो हम चाहते हैं?

उपरोक्त विवरण के बारे में क्या गलत हो सकता है: जेट्टी सर्वर के बारे में मैंने जो भी कॉन्फ़िगरेशन का उल्लेख किया है, वह सटीक होना चाहिए, जैसा कि मैंने किया। मुझे और विवरण प्रदान करने में खुशी हो रही है। AD या पैरेंट नेटवर्क ब्राउज़र के बारे में कोई भी कॉन्फिगरेशन संभावित रूप से संदिग्ध है, क्योंकि यह मेरे नियंत्रण में नहीं है और मैंने अपने लिए देखे जाने के बजाय कॉन्फ़िगरेशन की रिपोर्ट की है।


क्या TCP / 88 ब्राउज़र के बीच dns परिणामों में सूचीबद्ध सर्वरों के लिए _kerberos._tcp.OurITOrgDomain और _kerberos._tcp.partentdomain के बीच खुला है? क्या आप जेटी सर्वर पर प्रमाणित करने की आवश्यकता वाले क्रेडेंशियल्स के साथ मशीन 'ब्राउज़र' से परिजन कर सकते हैं?
जैकब इवांस

roguelynn.com/words/explain-like-im-5-kerberos आपके फ़ायरवॉल को कुछ प्रकाश डाल सकता है जिससे आपके मुद्दे (फिर से, आपके क्लाइंट से 88 dcs) के लिए हो सकता है
याकूब इवांस

नेटवर्क पर कब्जा किए बिना एक विस्तृत चरण-दर-चरण स्पष्टीकरण के लिए बहुत सारे चर हैं। फिर आप जल्दी से देखेंगे कि क्या एसपीएन ठीक से सेटअप हैं या यदि ब्राउज़र को चुपचाप प्रमाणित करने के लिए कॉन्फ़िगर करने की आवश्यकता है।
user2320464

जवाबों:


3

पैकेट कैप्चर देखे बिना, मुझे लगता है कि HTTP / www.website.com SPN को एप्लिकेशन चलाने वाले खाते में पंजीकृत होना चाहिए। Microsoft की निर्देशिका सेवा टीम के पास इस URL पर इस विषय को संबोधित करने वाला एक महान बहु-भाग पोस्ट है।

https://blogs.technet.microsoft.com/askds/2008/05/29/kerberos-authentication-problems-service-principal-name-spn-issues-part-1/

SPN को देखने के लिए क्या किया जा रहा है, यह पहचानने के लिए प्रत्येक परिवेश में क्लाइंट से पैकेट कैप्चर (नेटमन, वायरशार्क) चलाएं। एक बार जब यह निर्धारित हो जाता है, तो इसे चलाने वाले खाते में पंजीकरण करने के लिए सेटपैन सीएमडी का उपयोग करें।

FWIW, Kerberos केवल LAN पर काम करता है। यदि किसी को एक्सेस की आवश्यकता है जहां डोमेन नियंत्रक सुलभ नहीं हैं, तो आप एक एसएसओ जैसे कि शिबोलेथ या एडीएफएस पर विचार करना चाहेंगे।

संपादित करें: जैसा कि @ एलेक्स-एच द्वारा उल्लेख किया गया है , ब्राउज़रों को केर्बोस के माध्यम से चुपचाप प्रमाणित करने के लिए कॉन्फ़िगर करने की आवश्यकता होगी।

अंत में, यह Microsoft साझाकरण परिनियोजन के साथ एक सामान्य समस्या है। वे चाहते हैं कि उपयोगकर्ता द्वारा डोमेन पर प्रमाणीकरण किए जाने के बाद केर्बोस के माध्यम से SSO चुपचाप हो। इस प्रकार यदि उपरोक्त उत्तर आपकी समस्या का समाधान नहीं करते हैं, तो उनके फ़ोरम की जाँच करने की कोशिश करें जैसे कि निम्नलिखित:

क्रोम, सफारी या फायरफॉक्स पर केर्बोस


एक अच्छा जवाब, मेरी तुलना में बेहतर!
एलेक्स एच।

आप दोनों को धन्यवाद - मुझे लिंक किए गए डॉक्स के माध्यम से पढ़ने में कुछ दिन लगेंगे, लेकिन मैंने सवाल या कुछ भी नहीं छोड़ा है!
रॉबर्ट ग्रांट

उह, यह वास्तव में यह नहीं था, लेकिन मुझे लगता है कि इस उत्तर को स्वीकार करना सबसे अच्छा है क्योंकि असली एक बहुत ही असामान्य मामला है जिसे मैं एक अलग उत्तर के रूप में जोड़ूंगा। आपका बहुत बहुत धन्यवाद!
रॉबर्ट ग्रांट

0

कृपया उस ब्राउज़र से पहली कोशिश करें जिसमें NTLM सक्षम नहीं है (क्रोम / फ़ायरफ़ॉक्स)। ऐसा लगता है कि मुद्दा यह है कि आपके पास पूर्व प्रमाणीकरण सक्षम है और यह संभव हो सकता है कि दो तरह का भरोसा जगह में न हो।

पूर्व प्रमाणीकरण के लिए यहां एक नजर है https://support.microsoft.com/en-us/kb/2749007 और यहाँ https://hc.apache.org/httpcomponents-client-ga/tutorial/html/authentication.html

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.