2009-06-24 9 views
5

मैं केर्बेरोस प्रमाणीकरण का उपयोग कर एलडीएपी सर्वर में लॉगिन करने के लिए जावा में जीएसएसएपीआई का उपयोग कर रहा हूं। मैं केर्बेरोस के लिए नौसिखिया हूं, इसलिए मुझे खेद है कि यह एक स्पष्ट सवाल है, लेकिन मुझे इंटरनेट पर कुछ भी स्पष्ट नहीं मिला।जावा में केर्बेरोज प्रमाणीकरण - जावा में "लॉगिन" कार्रवाई "kinit" के बराबर होती है?

मैं निम्न चरणों का पालन:

  1. विन्यास फाइल पथ के लिए प्रणाली संपत्ति "java.security.auth.login.config" की स्थापना करके लॉग इन विन्यास को परिभाषित करें।
  2. विन्यास के नाम और एक आत्म परिभाषित कॉलबैक हैंडलर
  3. मामले लॉगिन के साथ कॉल LoginContext.login() सफल रहा, विषय (Subject.doAs() का उपयोग करके) "होने का नाटक", और एक नया InitialLDAPContext साथ बनाने के द्वारा LDAP सर्वर से कनेक्ट उचित पर्यावरण चर।

अब, मेरी समस्या यह नहीं है कि मुझे समझ में नहीं आता कि कौन सा कदम kerberos कार्रवाई से संबंधित है? क्या यह कहना सही है कि लॉगिन कार्रवाई के बाद मेरे पास केवल टीजीटी है? मुझे सेवा विशिष्ट टिकट कब मिलेगा?

धन्यवाद, Dikla

उत्तर

7

वर्ग com.sun.security.auth.module.Krb5LoginModule Kerberos संस्करण 5 प्रोटोकॉल के लिए एक लॉगिन मॉड्यूल के सूर्य का क्रियान्वयन है। सफल प्रमाणीकरण पर टिकट अनुदान टिकट (टीजीटी) विषय के निजी प्रमाण-पत्र सेट में संग्रहीत किया जाता है और केर्बेरोस प्रिंसिपल विषय के मूल सेट में संग्रहीत होता है।

(here से लिया)

इसका मतलब है कि LoginContext.login वास्तव में उस में kinit के बराबर है उनमें से प्रत्येक के बाद, हम एक TGT है।

सेवा टिकट प्राप्त किया जाएगा और बाद में उपयोग किया जाएगा - Subject.doAs() में किए गए क्रिया के अनुसार।

संबंधित मुद्दे